我正在使用dart regular expression并试图找到match。
飞镖代码:http://try.dartlang.org/s/SY1B
RegExp exp = const RegExp("/my/i");
String str = "Parse my string";
Iterable<Match> matches = exp.allMatches(str);
for (Match m in matches) {
String match = m.group(0);
print(match);
}
我正在尝试执行不区分大小写的搜索以查找字符串的所有匹配项。它说没有比赛。我确定我搞砸了某个地方,因为我是regexp的新手。如何修改代码以找到匹配项?
对于上下文,我计划修改代码以搜索我认为将使用以下代码实现的任何字符串。
RegExp exp = const RegExp("/${searchTerm}/i");
答案 0 :(得分:4)
/ pattern / flags语法适用于JavaScript,但不适用于Dart,因为Dart没有正则表达式文字。相反,文档显示了这一点:
const RegExp(String pattern, [bool multiLine, bool ignoreCase])
所以你的构造函数应该是这样的:
RegExp exp = const RegExp("my", ignoreCase: true);