ホームページ > Java > &#&チュートリアル > パイプ記号を区切り文字として使用して Java 文字列を正しく分割するにはどうすればよいですか?

パイプ記号を区切り文字として使用して Java 文字列を正しく分割するにはどうすればよいですか?

Barbara Streisand
リリース: 2024-12-19 02:34:31
オリジナル
702 人が閲覧しました

How to Correctly Split a Java String Using the Pipe Symbol as a Delimiter?

split(""|") を使用したパイプ シンボルによる Java 文字列の分割

split() メソッドを使用した Java 文字列の分割ただし、パイプ記号 ("|") を使用する場合は、指定された区切り文字に基づいて文字列を小さな部分文字列に分割する一般的な手法です。

公式 Java ドキュメントによると、正規表現 (Regex) 内のパイプ記号 ("|") は OR 演算子として扱われます。これは、テストを意味します。 split("|") は、"A" または "|" に基づいて文字列を効果的に分割します。その結果、空の文字列 ("<") も分割に含まれるという予期しない出力が生成されます。

この動作を防ぐには、バックスラッシュ () を使用してパイプ記号をエスケープする必要があります。バックスラッシュは正規表現のエスケープ文字として機能し、パイプ記号をリテラル文字として扱うことができます。演算子よりも文字列を分割する正しい方法は次のとおりです:

String[] result = test.split("\|");
ログイン後にコピー

パイプ記号をエスケープすることで、正規表現「|」はパイプ記号自体にのみ一致します。文字列は目的の部分文字列に分割されます:

>A<
>B<
>C<
>D<</p>
<p>または、Pattern.quote() メソッドを使用してパイプ記号のエスケープされたバージョンを作成することもできます:</p>
<pre class="brush:php;toolbar:false">String[] result = test.split(Pattern.quote("|"));
ログイン後にコピー

このメソッドは、入力文字列内のすべてのメタ文字がエスケープされ、文字の文字通りの意味が維持された文字列を返します。 Split() メソッドで Pattern.quote("|) を使用すると、パイプ記号を手動でエスケープするのと同じ結果が得られます。

以上がパイプ記号を区切り文字として使用して Java 文字列を正しく分割するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート