どの文字列にもマッチする正規表現を見つけようとしていました!そして、いくつかの検索の後に私はほとんどすべての答えがhereまたは.*
が言ったようにhere空の正規表現は任意の文字列に一致します
が言ったように[\s\S]
は、任意の文字列にマッチします。しかしPHP preg_match
でビットを再生しながら、私は空の正規表現は、任意の文字列に一致していることを見つけたことを述べていました!
if(preg_match("//u", "")) echo "empty string matchs\n";
else echo "empty string does not match\n";
if(preg_match("//u", "abc")) echo "abc matchs\n";
else echo "abc does not match\n";
if(preg_match("//u", "\n")) echo "new line matchs\n";
else echo "new line does not match\n";
if(preg_match("//u", "/")) echo "/ matchs\n";
else echo "/ does not match\n";
exit;
この意志出力
empty string matchs
abc matchs
new line matchs
/matchs
ライブデモ(https://eval.in/845001)
は、私が何かを一致させるために、安全に、この空の正規表現を使用することはできますか?空の正規表現はどういう意味ですか?
私は何もマッチする正規表現を必要とする理由を求めているならば、私はそれの文字列の検証機能の一部として正規表現のパラメータを必要とする関数を使用していると私はそれが何かを受け入れるようにしたいので、それはです。
何の文字列と一致しないために正規表現は一切正規表現ではありません。 'if($ string ==" ")'または 'if(strlen($ string)== 0)' – Ibu
@Ibuありがとうございます。しかし、文字列を検証する関数に正規表現を渡す必要があります。 –
あなたの最初の条件は、文字列が最初に空であるかどうかを確認してから、正規表現に入ります。 – Ibu