【发布时间】:2023-03-06 13:20:01
【问题描述】:
我正在尝试在字符串上使用简单的正则表达式来获取定价信息,但我的 preg_match_all 根本找不到它应该找到的内容。
我正在寻找例如$**.** 或 £**.** 或有时货币符号可能被编码为 HTML 实体,例如对于英镑 £ 或 £
使用preg_match_all 查找 html 实体有问题吗?
这是我正在尝试的:
$price = preg_match_all(
'#(?:\$|\£|\€|\£|\£)(\d+(?:\.\d+)?)#',
$string,
$matches
);
但我得到:未知修饰符“1”
【问题讨论】:
-
请不要在没有 cmets 的情况下投票 - 这个问题有什么问题?
-
您应该知道,在某些国家/地区,货币符号位于价格之后。另见那里的正则表达式:stackoverflow.com/questions/3517468/…
-
@MarvinLabs - 嗨,是的,我当然知道,您显示的帖子不会正则表达式货币只是一个数字,正在搜索的字符串也可能包含不是货币的数字
标签: php regex preg-match-all