Метод allMatches
Повторяет поиск совпадений этого шаблона в строке.
Если start указано, поиск совпадений начнется с этого индекса.
Возвращаемая итерируемая последовательность лениво находит неперекрывающиеся совпадения шаблона в string. Если пользователь запрашивает только первое совпадение, эта функция не должна вычислять все возможные совпадения.
Совпадения находятся путем последовательного поиска первого совпадения шаблона в строке, первоначально начиная с start, а затем с конца предыдущего совпадения (но всегда хотя бы на одну позицию позже начала предыдущего совпадения, в случае, если шаблон соответствует пустой подстроке).
RegExp exp = RegExp(r'(\w+)');
var str = 'Dash is a bird';
Iterable<Match> matches = exp.allMatches(str, 8);
for (final Match m in matches) {
String match = m[0]!;
print(match);
} Результат примера:
a bird
Реализация
Iterable<RegExpMatch> allMatches(String input, [int start = 0]);
© 2012 the Dart project authors
Licensed under the BSD 3-Clause "New" or "Revised" License.
https://api.dart.dev/stable/2.18.5/dart-core/RegExp/allMatches.html