之間除了考慮以下字符串:過濾號碼,當他們花括號
$text = "Dat foo 13.45 and $600 bar {70} and {8}";
我需要標註的所有號碼在$文本,除非他們是花括號之間進行。我現在有這樣的:
echo preg_replace("([0-9]+(?:\.[0-9]+)?)","{NUMBER:$0}",$tweet);
,其輸出:
Dat foo {NUMBER:13.45} and ${NUMBER:600} bar {{NUMBER:70}} and {{NUMBER:8}}
然而,所期望的輸出是:
Dat foo {NUMBER:13.45} and ${NUMBER:600} bar {70} and {8}
其中之間的數{和}被忽略。是否有可能擴大正則表達式來忽略大括號或是另一個需要的解決方案?
任何幫助,將不勝感激:-)
你可以通過接受答案來表達你的感激之情。還要考慮調查語法。這是你連續第四個plzsendtehregex問題;具體查找的語法已經向您解釋過。 - SA:[開源RegexBuddy替代品](http://stackoverflow.com/questions/89718/is-there)和[在線正則表達式測試](http://stackoverflow.com/questions/32282/regex-testing)爲工具,或[RegExp.info](http://regular-expressions.info/)爲教程。 – mario 2012-02-10 21:41:52