文字列(基本的には正規表現自体)を小文字に変換したいが、メタキャラクタが変換されないようにしたい。すべてのメタ文字を除く文字列を小文字に変換する
:私は
String x = "[\\s\\S]*Test Message Indicator: (.*)[\\s\\S]*";
x = x.toLowerCase();
を行う
場合、それはまた、正規表現の意味を変更しますs
に\\S
に資本S
を変換します。
私はそれを避けたいです。
最終正規表現は[\\s\\S]*test message indicator: (.*)[\\s\\S]*
とします。
これを簡単に行う方法はありますか?
大文字と小文字を区別しないで使用できませんか? – shmosel
は文字列関数ではありません。正規表現を意識したものが必要でしょうが、おそらくこれは起こりません。いくつかのlib正規表現をトークン化し、正規表現の "テキストノード"だけを扱うことができますが、そのようなものを見つけることは、このサイトの話題になりません。 –
私は正規表現として見られるように値全体が意図されていない場合、あなたの値に正規表現をインライン化しないことをお勧めします。懸念を分離してください。それ以外の場合は、独自のパーサーを作成して、それを分解して値を抽出する必要があります。テンプレートの種類がないと非常に難しいでしょう。 –