IOW、\w文字クラスの否定形式。また、正規表現を使用している言語ごとに異なる動作を期待する必要がありますか?
2 に答える
もちろん、とは\W
含ま\r
れ\n
ます。
\W
は否定で\w
あり、\w
文字、数字、および接続句読文字(アンダースコアなど)が含まれます。
現在、3つの可能性があります。
\w
ASCIIベースです==>[a-zA-Z0-9_]
\w
Unicodeベースです==>[\p{L}\p{Nd}\p{Pc}]
は、文字、すべての言語の数字、およびアンダースコアに類似したその他の文字を意味します。regular-expressions.infoのUnicodeを参照してください。\w
フレーバーを使用すると、修飾子を使用しての動作を切り替えることができます。
ただし、改行文字は含まれない\w
ため、すべての場合に含まれます。\W
\ wは省略形である[a-zA-Z0-9_]
ため、az(下と上)、数字、およびアンダースコアのみに一致します。否定された\wは\Wであり、\w以外のすべてに一致します
詳細はこちらをご覧ください。
基本的に、正規表現にはPOSIXとPerlの2種類があります。理論的には、posix正規表現はプログラミング言語に関係なく同じように動作するはずですが、いくつかの既知の例外があります。Javaと.NETの違いについては、このスレッドを参照してください(理論的には同じposix、実際には同じではありません) JavaとC#の正規表現は互換性がありますか?