服务端返回的结果如下怎么截取到这几个字(返回的是纯xml字符串) “北京市海淀区燕园街道北京大学”
<regeocode>
<formatted_address>
北京市海淀区燕园街道北京大学
</formatted_address>
<addressComponent>
…
</addressComponent>
</regeocode>
服务端返回的结果如下怎么截取到这几个字(返回的是纯xml字符串) “北京市海淀区燕园街道北京大学”
<regeocode>
<formatted_address>
北京市海淀区燕园街道北京大学
</formatted_address>
<addressComponent>
…
</addressComponent>
</regeocode>
`<regeocode>
<formatted_address>
北京市海淀区燕园街道北京大学
</formatted_address>
<addressComponent>
…
</addressComponent>
</regeocode>`.match(/北京市海淀区燕园街道北京大学/gm)[0]
<formatted_address>\s*([\s\S]*)\s*<\/formatted_address>
或
[^>\s]+(?=\s*<\/formatted_address>)
8 回答5.2k 阅读✓ 已解决
6 回答4.1k 阅读✓ 已解决
9 回答7.9k 阅读
3 回答2.8k 阅读✓ 已解决
3 回答4.4k 阅读✓ 已解决
5 回答3.2k 阅读✓ 已解决
6 回答2.8k 阅读
既然服务端返回的是 xml 格式的数据,那并不推荐使用正则表达式去解析,而是直接用浏览器提供的
DOMParser
去做,可以参考 MDN 文档,或者使用一些封装好的 xml 解析库也可以。在题主这个场景下,基本使用如下:
如果实在想用正则表达式,也可以:
但是如上所述,并不推荐,因为可能存在性能问题,而且代码不好维护,不如解析来得简单明了。