allMatches 抽象方法

Iterable<Match> allMatches(
  1. String string, [
  2. int start = 0
])

将此模式与字符串重复匹配。

如果提供了 start,则匹配将从此索引开始。

返回的可迭代对象会懒加载地找到模式在 string 中的非重叠匹配。如果用户只请求第一个匹配项,则此函数不应计算所有可能的匹配项。

通过重复在字符串中找到模式的第一个匹配项来找到匹配项,最初从 start 开始,然后从上一个匹配项的末尾开始(但总是比上一个匹配项的 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<Match> allMatches(String string, [int start = 0]);