从js代码中提取地址的正则表达式

3

我正在尝试从JS代码中提取地址。

我已经从原始JavaScript中提取了以下行。

(new GLatLng(45.512242,-73.554009),'2860 Main Street S',icon_near)

我已经编写了这个正则表达式

"\(new\sGLatLng\(           #Start of the match
(?<Lat>\-?\d{1,3}.\d+)      #Latitude
,
(?<Long>\-?\d{1,3}.\d+)\)   #Longitude   
,'
(?<Address>.+)              #The address
(?=',icon_near\))           #Positive LookAhead. The regex end just before ',icon_near)"

问题在于我有多个地址在一起,而正则表达式匹配不会停止,直到找到最后一个,icon_near\)为止。
我用这个正则表达式解决了我的问题:
,
'(?<Address>.+?)'
(?=,icon_near\))
1个回答

1
尝试使用这个替代方案:
\(new\sGLatLng\(          #Start of the match
(?<Lat>\-?\d{1,3}.\d+)    #Latitude
,
(?<Long>\-?\d{1,3}.\d+)\) #Longitude   
,
'(?<Address>.+)'          #The address
(?=,icon_near\))          #Positive LookAhead. The regex end just before ',icon_near)

单引号放错位置了。此外,我删除了一个不必要的单引号。

演示

http://regex101.com/r/sX8dB2


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接