以下返回真:
$bool1 = preg_match("/5/", "Your bill is $5.00 dude");
var_dump($bool1);
我希望这是因为'5'在字符串中。但以下返回false:
$bool1 = preg_match("/\$5\./", "Your bill is $5.00 dude");
var_dump($bool1);
我以为我正在$
正确地转义,以便它$5
在字符串中查找并找到它,但没有。有人可以解释吗?谢谢。
以下返回真:
$bool1 = preg_match("/5/", "Your bill is $5.00 dude");
var_dump($bool1);
我希望这是因为'5'在字符串中。但以下返回false:
$bool1 = preg_match("/\$5\./", "Your bill is $5.00 dude");
var_dump($bool1);
我以为我正在$
正确地转义,以便它$5
在字符串中查找并找到它,但没有。有人可以解释吗?谢谢。
使用单引号来防止 PHP 误解任何转义:
$bool1 = preg_match('/\$5\./', "Your bill is $5.00 dude");
您应该使用进行正确转义的preg_quote()函数
$bool1 = preg_match('/\$5\./', "Your bill is $5.00 dude");
var_dump($bool1);