问题

我的正则表达式模式看起来像

<xxxx location="file path/level1/level2" xxxx some="xxx">

我只对分配给位置的引号中的部分感兴趣.不应该是如下容易,没有贪婪的开关?

/.*location="(.*)".*/

似乎无效.



解决方法

你需要使你的正则表达式不贪婪,因为默认情况下,"(.*)"将匹配所有"文件路径/ level1 / level2"xxx some = xxx".

相反,您可以使您的点星星不贪婪,这将使它匹配尽可能少的字符:

/location="(.*?)"/

在量词(?, * + )上添加?会使其不贪婪.




相关问题推荐