Regex 如何在flatter中使用正则表达式获取文本中的字符串
我试图在dart(颤振)中获取Regex 如何在flatter中使用正则表达式获取文本中的字符串,regex,flutter,dart,Regex,Flutter,Dart,我试图在dart(颤振)中获取/data/user/0/com.example.notes/app_flatter/image_picker8474259280565710843.jpg 我已经尝试了下面的代码 var opDataString = '{image: /data/user/0/com.example.notes/app_flutter/image_picker8474259280565710843.jpg}'; print(opDataString.split(new RegE
/data/user/0/com.example.notes/app_flatter/image_picker8474259280565710843.jpg
我已经尝试了下面的代码
var opDataString = '{image: /data/user/0/com.example.notes/app_flutter/image_picker8474259280565710843.jpg}';
print(opDataString.split(new RegExp(r"{image: ^}*$"))[0]);
但是没有任何效果。您可以使用捕获组进行匹配,而不是使用拆分
{image: ([^}]+)}
|
比如说
var opDataString = '{image: /data/user/0/com.example.notes/app_flutter/image_picker8474259280565710843.jpg}';
RegExp r = new RegExp("{image: ([^}]+)}");
var match = r.firstMatch(opDataString);
print(match.group(1));
输出
/data/user/0/com.example.notes/app_flutter/image_picker8474259280565710843.jpg
或者使用拆分,获取第二项:
print(opDataString.split(new RegExp(r"{image: |}"))[1]);
如果您在回答这个问题时使用上述示例,这将非常有用。@Mahi您可能会在例如
print(opDataString.split)(newregexp(r“{image:}”)[1])上进行拆分代码>但对于数据结构,匹配会更精确。看看有没有你可以提供的教程或链接,谷歌搜索不会给我这些关于组的结果,例如这些页面或链接。该函数列在