我需要得到的最後一場比賽在*一串像爲什麼不使用的regex * +(所有格)不匹配
one 1.234 three
some text 1.2321 xyz 1 5 1.234 and more text
some other text
還需要周圍的文本[0-9] - 即使當沒有像第三行那樣的號碼時
我想使用^(.*)([0-9\.]*+)(.*)$
,但它只是匹配第一個(。*)。
另一方面,^(.*?)([0-9\.]*+)(.*?)$
只是匹配最後一個(。*?)。
這是爲什麼?我認爲它會盡力滿足所有規則?
我知道我可以排除0-9。從最後*得到我想要的,但我想明白爲什麼上述不工作,雖然我用*
你用'* +'背後的意圖是什麼? – anubhava 2015-03-03 10:48:11
你正在使用哪個正則表達式引擎?根據正則表達式的不同,'* +'可能有完全不同的含義。 – 2015-03-03 10:51:52
PCRE發動機。 * +應該是所有格。不是嗎? – user3159270 2015-03-03 11:20:42