API谷歌地图中的正则表达式

时间:2016-05-17 20:54:42

标签: excel-vba vba excel

我需要提取数据" LNG"来自API地理编码

"location" : {
               "lat" : -33.4419266,
               "lng" : -70.64956029999999
              },

并且,我尝试了这个:

regex.Pattern = "location(?:.|\n)*?""lng"".*?([0-9]+)": regex.Global = False

但是暂时,我得到" 70"而不是" -70.64956029999999"。 我如何获得全部号码?感谢

2 个答案:

答案 0 :(得分:1)

在json上使用RegEx最终会让你发疯...

Sub Test()

    Dim j, s As Object
    j = "{location : {lat : -33.4419266, lng : -70.64956029999999}}"

    Set s = CreateObject("scriptcontrol")
    s.Language = "javascript"

    s.eval "var o = (" & j & ");"

    Debug.Print s.eval("o.location.lng") '>> -70.6495603

End Sub

答案 1 :(得分:0)

试试这个:

regex.Pattern = "(?:""lng"" : )([^\n\r]+)"