如何从 Node.js 中的文本中检测地址
How to detect the address form the text in Node.js
我有原始文本
示例 1:
order pickup details>>> >>> pick up before the store closes on Wed, Apr 11>>> >>>
scan in-store for order pickup>>> >>> >>> 9019560>>> Warrenville Target Store>>> 28201 Diehl Rd, Warrenville, IL 60555
示例 2:
Come to collect your order in the next 2 days (after that it'll be cancelled). Your payment will be processed as soon as you collect your order.>> >> >>
Pickup Store:>> >> Lush Naperville <https://click.e.lush.com/?qs=cbb6669d6dac2528c696ad86bb5b6fd3ebae7703b0b05e2a40dbc6705d0f3325fe891806d5a629b19dbc9b8e9d36e46e7d944d995ea896decd587d210c8bb838>>>
119 S. Main Street , Naperville, IL 60540>> >> Choose between curbside or in-store pickup.>>
如何从Node.js中的上述文本中提取地址部分。如何解决?
实际上,这里发生的事情是。订单确认后,我收到来自不同商店的不同电子邮件。我需要从电子邮件中获取商店地址。这里每家商店都使用不同的格式进行电子邮件订单确认。
将电子邮件模板转换为文本格式后,我得到了这个原始文本。
下面一个是我的问题的相关问题。但它在 python.
有没有办法从文本中检测地址?我是新手。
Node.js中上述地址格式类型的正则表达式是
var text = "pick up before the store closes on Wed, Apr 11>>> >>>
scan in-store for order pickup>>> >>> >>> 9019560>>> Warrenville Target Store>>> 28201 Diehl Rd, Warrenville, IL 60555"
var regex = "[0-9]{1,5} .+, .+, [A-Z]{2} [0-9]{5}";
var Address = text.match(regex);
console.log("Address",Address);
// Address = 28201 Diehl Rd, Warrenville, IL 60555
解释:
[0-9]{1,3}:1到3位数字,地址编号
(space): 数字和街道名称之间的space
.+: 街道名称,任意字符出现任意次数
,: 城市
前的一个逗号和一个space
.+:城市,任意字符出现任意次数
,: state
前一个逗号和一个space
[A-Z]{2}:从 A 到 Z 恰好 2 个大写字符
[0-9]{5}: 5 位数
text.match(regex) 将 return 一个包含所有匹配项的数组。
然而,此正则表达式仅用于特定类型的地址格式。
我有原始文本
示例 1:
order pickup details>>> >>> pick up before the store closes on Wed, Apr 11>>> >>>
scan in-store for order pickup>>> >>> >>> 9019560>>> Warrenville Target Store>>> 28201 Diehl Rd, Warrenville, IL 60555
示例 2:
Come to collect your order in the next 2 days (after that it'll be cancelled). Your payment will be processed as soon as you collect your order.>> >> >>
Pickup Store:>> >> Lush Naperville <https://click.e.lush.com/?qs=cbb6669d6dac2528c696ad86bb5b6fd3ebae7703b0b05e2a40dbc6705d0f3325fe891806d5a629b19dbc9b8e9d36e46e7d944d995ea896decd587d210c8bb838>>>
119 S. Main Street , Naperville, IL 60540>> >> Choose between curbside or in-store pickup.>>
如何从Node.js中的上述文本中提取地址部分。如何解决?
实际上,这里发生的事情是。订单确认后,我收到来自不同商店的不同电子邮件。我需要从电子邮件中获取商店地址。这里每家商店都使用不同的格式进行电子邮件订单确认。
将电子邮件模板转换为文本格式后,我得到了这个原始文本。
下面一个是我的问题的相关问题。但它在 python.
有没有办法从文本中检测地址?我是新手。
Node.js中上述地址格式类型的正则表达式是
var text = "pick up before the store closes on Wed, Apr 11>>> >>>
scan in-store for order pickup>>> >>> >>> 9019560>>> Warrenville Target Store>>> 28201 Diehl Rd, Warrenville, IL 60555"
var regex = "[0-9]{1,5} .+, .+, [A-Z]{2} [0-9]{5}";
var Address = text.match(regex);
console.log("Address",Address);
// Address = 28201 Diehl Rd, Warrenville, IL 60555
解释:
[0-9]{1,3}:1到3位数字,地址编号
(space): 数字和街道名称之间的space
.+: 街道名称,任意字符出现任意次数
,: 城市
前的一个逗号和一个space.+:城市,任意字符出现任意次数
,: state
前一个逗号和一个space[A-Z]{2}:从 A 到 Z 恰好 2 个大写字符
[0-9]{5}: 5 位数
text.match(regex) 将 return 一个包含所有匹配项的数组。
然而,此正则表达式仅用于特定类型的地址格式。