ユーザーが送信しようとしているメッセージとメッセージ テンプレートを一致させるアプリケーションを作成しようとしています。メッセージの一致には Java 正規表現を使用しています。テンプレート/メッセージには特殊文字が含まれている場合があります。
正規表現が機能し、可能な限り多くのケースで一致するようにするためにエスケープする必要がある特殊文字の完全なリストを取得するにはどうすればよいでしょうか?
Java 正規表現内のすべての特殊文字をエスケープするための普遍的なソリューションはありますか?
ベストアンサー1
- 正規表現でエスケープする必要がある Java 文字は次のとおりです。
\.[]{}()<>*+-=!?^$|
- 閉じ括弧の 2 つ (
]
および}
) は、同じ種類の括弧を開いた後にのみエスケープする必要があります。 - - 括弧内では、
[]
一部の文字 (や+
など-
) はエスケープなしでも機能することがあります。