我想在flutter中使用正则表达式从字符串中提取子字符串。 例如:如果字符串是"HI hello @shemeer how are you @nijin",则预期结果将是[shemeer,nijin] 输入:String s= "HI hello @shemeer how are you @nijin" 输出:output=["shemeer","nijin"] 有人知道吗,请帮帮我
RegExp exp = RegExp(r'(?<=@)(\w+)');
String str = 'HI hello @shemeer how are you @nijin';
Iterable<RegExpMatch> output = exp.allMatches(str);
for (final m in output) {
print(m[0]);
}
2条答案
按热度按时间gg0vcinb1#
您可以将字符串拆分为单词,然后查找
@
并基于它生成列表。或者使用
allMatches
和RegExp(r'@\w+')
,就像pskink在评论中提到的那样。z2acfund2#
你可以尝试使用这个正则表达式模式:
(?<=@)\w+