我刚接触正则表达式,需要编写一个从XML页面中提取特定数据的正则表达式。例如,
<name>Number of test runs</name>
<value>2</value>我需要提取的唯一数字是2。我希望它查看XML标记名,这样我就不会从页面上的任何其他数字中提取。下面是我所拥有的,但我正在匹配所有的内容,而不仅仅是2。任何帮助都将不胜感激。
当前正则表达式:
/<name>Number of Failed BGPs</name>\n<value>(.+?)/发布于 2014-08-16 01:25:05
你说的问题是,它匹配的是所有的值,而不仅仅是值(2) ()。但您确实需要匹配所有内容,以确保它是正确的<name>标记。
您想要的区别是匹配的组,由括号指定。
/<name>Number of Failed BGPs<\/name>\n<value>(.+?)<\/value>/您希望获得第一个匹配的组,它应该就是值本身。注意,我还向正则表达式添加了</value>标记。如果不这样做,您的惰性量词将只提取第一个数字。
https://stackoverflow.com/questions/25330454
复制相似问题