0

以下が空の配列を返す理由を誰かが説明してくれますか?

$reg = "/(\[{(false|true)};{.+};{\d}\])+/";
preg_match_all($reg,"[{false};{abcde};{10}][{true};{fghij};{10}]",$matches);
print_r($matches);
4

2 に答える 2

2

あなたはそれが\dいつあるべきかを書いた\d+

$reg = "/(\[{(false|true)};{.+};{\d+}\])+/";
preg_match_all($reg,"[{false};{abcde};{10}][{true};{fghij};{10}]",$matches);
print_r($matches);

あなたの場合は問題ではないようですが、中括弧は特殊文字であるため、中括弧もエスケープします。

$reg = "/(\[\{(false|true)\};\{.+\};\{\d+\}\])+/";
于 2009-03-23T18:55:00.833 に答える
2

\d は \d+ である必要があります

于 2009-03-23T18:55:53.967 に答える