метод split абстрактного класса
List<String> split(Разделяет строку на совпадения с pattern и возвращает список подстрок.
Находит все совпадения с pattern в этой строке и возвращает список подстрок между совпадениями.
var string = "Hello world!";
string.split(" "); // ['Hello', 'world!'];
Пустые совпадения в начале и конце строк игнорируются, как и пустые совпадения сразу после другого совпадения.
var string = "abba";
string.split(new RegExp(r"b*")); // ['a', 'a']
// not ['', 'a', 'a', '']
Если эта строка пустая, результат — пустой список, если pattern совпадает с пустой строкой, и это [""] если шаблон не совпадает.
var string = '';
string.split(''); // []
string.split("a"); // ['']
Разделение с пустым шаблоном разделяет строку на строки с одним кодовым символом.
var string = 'Pub';
string.split(''); // ['P', 'u', 'b']
string.codeUnits.map((unit) {
return new String.fromCharCode(unit);
}).toList(); // ['P', 'u', 'b']
Разделение происходит на границах кодовых единиц UTF-16, а не на границах рун:
// String made up of two code units, but one rune.
string = '\u{1D11E}';
string.split('').length; // 2 surrogate values
Чтобы получить список строк, содержащих отдельные руны строки, вы не должны использовать split. Вместо этого вы можете отобразить каждую руну в строку следующим образом:
string.runes.map((rune) => new String.fromCharCode(rune)).toList();
Исходный код
List<String> split(Pattern pattern);
© 2012 the Dart project authors
Licensed under the Creative Commons Attribution-ShareAlike License v4.0.
https://api.dartlang.org/stable/1.24.3/dart-core/String/split.html