Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/254.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
php-货币正则表达式在php中不起作用,其他地方是_Php_Regex - Fatal编程技术网

php-货币正则表达式在php中不起作用,其他地方是

php-货币正则表达式在php中不起作用,其他地方是,php,regex,Php,Regex,我有一个pregex/[A-Z]{3}\s\(.\)/正在处理中,但是当我在php中使用它时,它会返回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”;

我有一个pregex
/[A-Z]{3}\s\(.\)/
正在处理中,但是当我在php中使用它时,它会返回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”;对我来说。

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

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

有,但是
g
不是其中之一。要进行全局搜索,请使用。

在regexr.com中的regex关闭后有一个g属性,该属性不适用于php。

请发布完整的代码,包括数据示例和您期望的内容。对我来说效果很好。从regex末尾删除了g字母。现在工作。