1. ホーム
  2. java

Java - 一発で分割・トリミング

2023-10-04 08:50:45

質問

次のような文字列があります。 String attributes = " foo boo, faa baa, fii bii," 私はこのような結果を得たい。

String[] result = {"foo boo", "faa baa", "fii bii"};

そこで問題なのは、すでに分割されている1つのショットに、どのように分割とトリミングを行うかです。

String[] result = attributes.split(",");

しかし spaces はまだ結果に残っています。

String[] result = {" foo boo", " faa baa", " fii bii"};
                    ^           ^           ^

ループを作って trim を作ることもできますが、一発で作りたいのです。

どのように解決するのですか?

正規表現を使う \s*,\s* で分割します。

String result[] = attributes.split("\\s*,\\s*");


先頭と末尾の空白文字について

前の解決策では、まだ最初と最後の空白文字が残っています。ですから、もしそれらのいずれかを期待しているのであれば、次の解決策を使用して同じものを削除することができます。

String result[] = attributes.trim().split("\\s*,\\s*");