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.19.6/dart-core/RegExp/allMatches.html