1

以下は true を返します。

$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誰か説明できますか?ありがとう。

4

3 に答える 3

1

適切なエスケープを行うpreg_quote()関数を使用する必要があります

于 2013-09-26T13:47:17.380 に答える
0
$bool1 = preg_match('/\$5\./', "Your bill is $5.00 dude");
var_dump($bool1);
于 2013-09-26T13:52:57.147 に答える