allMatches 抽象方法

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

将此模式重复应用于字符串。

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

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

通过重复在字符串中找到模式的首个匹配项来找到这些匹配项,最初从 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]);