RegEx - 第一场比赛后停止

时间:2016-07-15 16:04:21

标签: regex otrs

我们正在使用此正则表达式来过滤主题中的票号。

这是我们正在使用的正则表达式:\\[\\#(.*)\\]

主题通常如下所示:"[#20160708-0020] Hello blah blah"

正则表达式获取我们"20160708-0020",我们可以进一步使用它。

公司的某些人开始写这样的邮件:"[#20160708-0020] Hello [SQL] blah blah"

所以正则表达式会让我们"20160708-0020] Hello [SQL"显然不正确。

有没有办法告诉正则表达式在第一场比赛后停止?谢谢! :)

2 个答案:

答案 0 :(得分:1)

https://regex101.com/r/sY4pG6/1

\[\#(.*?)\]

正则表达式中的*是贪婪的。它将尽可能地捕获。

上面的*?是懒惰的。它将尽可能少地捕获。这将使你的正则表达式在第一场比赛后停止。

答案 1 :(得分:1)

为了在它进一步发展之前停止它,你需要表达lazy

\[\#(.*?)\]

注意星号后面的问号。