PHP - 货币正则表达式不在PHP中工作,其他地方是

时间:2014-09-16 11:53:11

标签: php regex

我有这个正则表达式/[A-Z]{3}\s\(.\)/正在使用regexr.com,但是当我在php preg_match()中使用它时,它会返回false USD ($)。我做错了什么?

编辑: 我的php版本是 5.4.32

if(preg_match('/[A-Z]{3}\s\(.\)/g', $var)){
            return $var;
        }else{
           return 'Money error';
        }

使用$ var ='USD($)'返回“Money error”;对我来说。

2 个答案:

答案 0 :(得分:0)

您不能将g放在正则表达式的末尾:

php > echo preg_match("/[A-Z]{3}\s\(.\)/", 'USD ($)');
1

modifiers you can use,但g不是其中之一。要进行全局搜索,请使用preg_match_all

答案 1 :(得分:0)

从regexr.com关闭正则表达式后,有 g 属性,不能与php一起使用。