PHPのregexで[\ s \ S] *とは何を意味していますか? [\S\s]*
は実際にはすべての文字列と一致しますか.*
と同じですか?PHPのregexで[ S s] *とは何を意味していますか?
20
A
答えて
34
デフォルトでは、.
は改行と一致しません。[\s\S]
はその問題のハックです。
これはJavaScriptで一般的ですが、PHPでは/s
フラグを使用して、ドットをすべての文字に一致させることができます。
15
.
メタ文字は、改行以外のすべての文字に一致します。したがって、一致するように使用されているパターン.*
は、改行をうまく一致させる必要がある場合には機能しません。改行を含む任意のの文字がそう[\d\D]
、[\w\W]
を行う空白文字および非空白文字の文字クラスがある
preg_match('/^.*$/',"hello\nworld"); // returns 0
[\s\S]
が一致します。したがって、あなたのパターン[\s\S]*
は今何でも一致します。
preg_match('/^[\s\S]$/s',"hello\nworld"); // returns 1
(改行を含む).
マッチ何かを作るための代替はs
修飾子を使用することです。 s
モードをオンとオフの場合(?-s)
ターン
preg_match('/^(?s).*(?-s)$/',"hello\nworld"); // returns 1
(?s)
:インライニングとしてs
改質剤を使用する
preg_match('/^.*$/s',"hello\nworld"); // returns 1
代替方法です。一度オフにすると、.
は改行と一致しません。
1
[\s\S]
改行を含む任意の文字に一致する文字セット。
.
改行以外の文字に一致します。
関連する問題
- 1. perlではs -/- とs -/\ Z--は何を意味しますか?
- 2. /AA[^@\s]+([^@¥s]+\.)+[^@¥s]+=z/意味?
- 3. IIS cgi: "%s"%sの意味
- 4. この条件(s [i] && s [i]!= c)は何を意味しますか?
- 5. %SはPHP、HTML、またはXMLで何を意味しますか?
- 6. (?s)。*はApache mod_rewrite RewriteRuleで何を意味しますか?
- 7. JavaScriptで正規表現\ Sは何を意味しますか?
- 8. -sオプションはGNU sedで何を意味しますか?
- 9. 文字 `S`はnosetest出力で何を意味しますか
- 10. このコードは何を意味しますか(s、e)?
- 11. 構造内の「s」は何を意味しますか?
- 12. s/multi-specのretagパラメータは何を意味しますか?
- 13. regexの文字列の型は何ですか: '\ S +?@ S +'
- 14. `` ls -l`の結果で "s"の意味は何ですか?
- 15. Delphiプログラミングで "%s"、 "%d"などの意味は何ですか?
- 16. npmコマンドで-sの意味は何ですか?
- 17. php regex "-s from string
- 18. s_i = s [i] - 'a'の意味は何ですか?
- 19. このRegExpパターン/(?:^ |:|)(?:\ s * \ [)+/gはJavascriptで何を意味しますか? jQueryので
- 20. 意味はなんですか?<S extends T>セーブ(Sエンティティ); Springリポジトリで?
- 21. RegEx表記とS?
- 22. ベクトルコンポーネントのs、t、p、qの意味は?
- 23. Pythonでは%sはどういう意味ですか?
- 24. main(String ... s)とmain(String [] s)の違いは何ですか?
- 25. if(!(s&i))とif(s&i == 0)の違いは何ですか?
- 26. "%!s"とは何ですか?
- 27. ld -sはどういう意味ですか?
- 28. "!S:〜%I%、1!" == ""はどういう意味ですか?
- 29. 文字頭文字Sはどういう意味ですか?
- 30. python regex repeat "'s"?
常に 's'修飾子があります... – BoltClock
' .'はいつ新しい行にマッチしますか? – yoyo
@BoltClock - ありがとう、私はちょうどそれに到達した、ちょうどそれがPHPで行われている方法を確認していた。 – Kobi