当前位置:  开发笔记 > 编程语言 > 正文

我的正则表达式匹配太多了.我怎么让它停下来?

如何解决《我的正则表达式匹配太多了.我怎么让它停下来?》经验,为你挑选了2个好方法。

.*通过?在其后添加' ' 使非贪婪:

Project name:\s+(.*?)\s+J[0-9]{7}:


Konrad Rudol.. 14

在这里使用非贪婪量词可能是最好的解决方案,也因为它比贪婪的替代方案更有效:贪婪的匹配通常尽可能地(在这里,直到文本的结尾!)然后追溯字符后面的字符尝试匹配之后的部分.

但是,请考虑使用否定字符类:

Project name:\s+(\S*)\s+J[0-9]{7}:

\S 意思是"除了空白之外的所有东西,这正是你想要的.



1> jj33..:

.*通过?在其后添加' ' 使非贪婪:

Project name:\s+(.*?)\s+J[0-9]{7}:



2> Konrad Rudol..:

在这里使用非贪婪量词可能是最好的解决方案,也因为它比贪婪的替代方案更有效:贪婪的匹配通常尽可能地(在这里,直到文本的结尾!)然后追溯字符后面的字符尝试匹配之后的部分.

但是,请考虑使用否定字符类:

Project name:\s+(\S*)\s+J[0-9]{7}:

\S 意思是"除了空白之外的所有东西,这正是你想要的.

推荐阅读
殉情放开那只小兔子
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有