[Dart / Flutter]文字列の分割 split()

splitメソッドを使うと、文字列を特定の文字やパターンで分割して、部分文字列のリストを取得することができます。複数の情報が一つの文字列にまとめられている場面で、それを個別の要素として扱いたい時に役立ちます。

文法・構文形式

List parts = originalString.split(pattern);

  • parts: 分割後の文字列
  • originalString: 分割元の文字列
  • pattern: 置き換える対象となる部分文字列

splitメソッドは、文字列を指定されたパターンに従って分割し、それらの部分文字列から成るリストを返します。このメソッドは特定のデリミタ、例えばコンマやスペースなどの文字や文字列で、文字列を区切るのに非常に役立ちます。

利用場面

  • CSVデータやスペース区切りのテキストデータを行や要素に分割する時。
  • URLやファイルパスなどの文字列から、特定の部分を取り出す場合。
  • ユーザーからの入力データを解析して、情報を分離する必要がある場面。

カンマで区切られたデータの分割

String data = "apple,banana,grape";
List<String> fruits = data.split(",");
print(fruits);

(結果)
[apple, banana, grape]

スペースで区切られた文章を単語に分割

String sentence = "Dart is wonderful";
List<String> words = sentence.split(" ");
print(words);

(結果)
[Dart, is, wonderful]

URLからパス部分だけを取り出す

String url = "http://example.com/path/to/resource";
List<String> parts = url.split("/");
print(parts.last);

(結果)
resource

メリット
  • 複雑な文字列データを簡単に部分文字列のリストに変換できる。
  • 様々な文字やパターンでの分割が可能で、柔軟なデータ処理が実現できる。
デメリット
  • 分割したいパターンが複数存在する場合や、特定の条件下でのみ分割したい場合には、追加のロジックが必要。
  • 不適切なパターンを指定すると、意図しない分割結果になることがある。

splitメソッドは、文字列を部分文字列のリストに変換する際、よく使うツールです。