文字列分割のための正規表現メタ文字のエスケープ
Java の Split() メソッドで正規表現を使用する場合は、特別な意味を考慮することが重要です正規表現構文で一般的に使用される特定の文字。そのような文字の 1 つはピリオド (.) で、任意の文字を表します。
指定されたコードでは、filename.split(".") は文字列ファイル名をピリオドで分割しようとします。ただし、ピリオドは正規表現のメタ文字として解釈されるため、意図したとおりの結果が得られない可能性があります。
この問題を解決するには、ピリオドを "" を使用してエスケープし、ピリオドが正規表現のメタ文字として扱われることを示す必要があります。メタ文字ではなくリテラル文字です。
修正されたコード:
次の調整されたコードは正しく分割されます。ピリオドで文字列ファイル名を取得し、最初の部分を取得します:
String[] fn = filename.split("\."); return fn[0];
「.」を使用することで、ピリオドを効果的にエスケープし、文字列分割用のリテラル文字として解釈するように Split() メソッドに指示します。これにより、文字列がピリオドごとに確実に分割され、目的の部分 (つまり、この場合は最初の部分) にアクセスできるようになります。
以上がJava の `split()` メソッドで正規表現メタ文字を適切にエスケープするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。