我正在嘗試一個簡單的正則表達式來處理價格信息的字符串,但我的preg_match_all
根本找不到它應該做的。從HTML文本中匹配產品價格
我正在尋找例如$**.**
或£**.**
或有時貨幣符號可能被編碼爲HTML實體,例如爲英鎊£
或£
使用preg_match_all
找到html實體有問題嗎?
這裏就是我想:
$price = preg_match_all(
'#(?:\$|\£|\€|\£|\£)(\d+(?:\.\d+)?)#',
$string,
$matches
);
,但我得到:未知的修飾詞 '1'
請不要downvote沒有評論請 - 這個問題有什麼問題? –
您應該知道,在某些國家,貨幣符號是在價格之後。另請參閱正則表達式那裏:http://stackoverflow.com/questions/3517468/php-regular-expression-to-match-price-or-amount –
@MarvinLabs - 嗨,是的,我知道這當然,崗位你顯示不正確的貨幣只是一個數字,被搜索的字符串也可能包含非貨幣的數字 –