我想在這樣的表達式來分析和捕捉組:奇怪的詞或百分比的正則表達式的情況下
- ABC =高清
- ABC = 10
- ABC = 10%
- ABC = 10.0
- ABC = 10.0%
但我無法將%的病例與下面的正則表達式匹配:
(\w+) *= *(\w+|\d+(?:\.\d+)?%?)
什麼是最令人驚訝的是,如果我停止接受的話我可以匹配百分比 - 去除\w+
:
(\w+) *= *(\d+(?:\.\d+)?%?)
我用debuggex並regex101瞭解爲什麼發生這種情況,但迄今爲止沒有成功。
'( \ w +)* = *(\ w + | \ d +(?:\。\ d +)?%?)(?= \ n | $)' –
您需要全局標誌。在regex101中,您可以在第二個框中鍵入g(在您的正則表達式旁邊鍵入g)時進行設置。而且,\ w也足夠,因爲它也可以接受數字。 –