абстрактный метод splitMapJoin
String splitMapJoin(Разделяет строку, преобразует её части и объединяет их в новую строку.
pattern используется для разделения строки на части и отделения совпадений.
Каждое совпадение преобразуется в строку с помощью вызова onMatch. Если onMatch опущено, используется соответствующая строка.
Каждая несовпадающая часть преобразуется с помощью вызова onNonMatch. Если onNonMatch опущено, используется несовпадающая часть.
Затем все преобразованные части объединяются в результирующую строку.
'Eats shoots leaves'.splitMapJoin((new RegExp(r'shoots')),
onMatch: (m) => '${m.group(0)}',
onNonMatch: (n) => '*'); // *shoots*
Исходный код
String splitMapJoin(Pattern pattern,
{String onMatch(Match match), String onNonMatch(String nonMatch)});
© 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/splitMapJoin.html