2016-07-15 37 views
1

我們使用此正則表達式過濾來自主題的票號。正則表達式 - 第一次匹配後停止

這是我們使用正則表達式:\\[\\#(.*)\\]

主題通常是這樣的:"[#20160708-0020] Hello blah blah"

正則表達式得到的美國"20160708-0020",我們可以進一步使用。從公司

有人開始寫郵件是這樣的:"[#20160708-0020] Hello [SQL] blah blah"

所以正則表達式將得到我們"20160708-0020] Hello [SQL"這顯然是不正確的。

有什麼辦法讓正則表達式在第一場比賽後停止?謝謝! :)

回答

0

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

\[\#(.*?)\] 

*在你的正則表達式是貪婪的。它將盡可能地捕獲。

上面的*?是懶惰的。它將盡可能少地捕獲。這將使你的正則表達式在第一場比賽後停止。

1

爲了在它更進一步之前阻止它,你需要讓你的表達lazy

\[\#(.*?)\]

公告星號後的問號。

相關問題