валюта регулярное выражение не работает в PHP, в другом месте

У меня есть этот pregex /[A-Z]{3}\s\(.\)/ который работает над regexr.com но когда я использую его в PHP с preg_match() он возвращает ложь с USD ($), Что я делаю неправильно?

РЕДАКТИРОВАТЬ:
Моя версия PHP 5.4.32

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

Это возвращает «Ошибка денег» с $ var = ‘USD ($)’; для меня.

-1

Решение

Есть г атрибут после закрытия регулярного выражения от regexr.com, который не работает с php.

0

Другие решения

Вы не можете поставить g в конце регулярного выражения:

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

Есть модификаторы, которые вы можете использовать, но g не один из них. Чтобы сделать глобальный поиск, используйте preg_match_all.

0