0
私はPHPの正規表現に出くわしました、以下で言及しましたが、私はなぜ\q\
が使われているのか分かりません。次のphp正規表現はどのように評価されますか?
$strBuildTitle="SOME URL";
$patterns[0] = "/[^a-zA-Z0-9\q\ ]/";
$replacements[0] = " ";
$strBuildTitle = preg_replace($patterns, $replacements, $strBuildTitle);
私は\q\
が、ここで使用されている理由、それは、与えられたURLからわからない任意の非英数字文字を削除しようと考えています。引用符の削除に関連していますか?
Nah。 PHPは未知のC文字列エスケープの前にバックスラッシュを保持します。 '' \ q "'の意味はPCREに達するまで文字列値に '\ q'のままです。その文脈で文字「q」と同じになるのはPCREです。 – mario
ちょうど好奇心。 'print 'はあなたに何を与えるのですか? –
'<? "\ j"を印刷します。 ?> '私に' ... \ j ... 'の出力を与えます – mario