我正在尝试创建一个表达式来匹配地址中的城市和州名称,例如
100 Hall of Justice
1701 Farnam St.
Omaha
Nebraska
68183 United States
3208 Sheridan Ct.
Lincoln
Nebraska
68506
3710 S 192nd St
Omaha
Nebraska
68130 United States
IL Court of Appeals 2nd District
55 Symphony Way
Elgin
Illinois
60120 United States
正如您所看到的,城市和州名称并不总是出现在地址内的同一位置(节点),但它们总是在整个地址之间的每一行显示为一个单词
我是否可以在这种情况下使用ReGEX来匹配城市和州名称而不管它们出现在地址中的哪个位置?
答案 0 :(得分:1)
在最简单的情况下,以下正则表达式模式将提供预期的城市和州名称:
(\w+)\n(\w+)\n\d+(\s+United States)?\n?$
https://regex101.com/r/U50ZbJ/3
(\w+)\n(\w+)
- 分别与 city 和州匹配的两个捕获组
答案 1 :(得分:0)
根据@ RomanPerekhrest的回答,现在它将匹配城市名和州名中的两个(或更多)单词。
([a-zA-Z ]+)\n([a-zA-Z ]+)\n\d+(\s+United States)?\n?$