正则表达式求解:如何将匹配到的内容变为数组?

发布于 2022-09-12 01:17:33 字数 1186 浏览 23 评论 0

需要匹配的内容

···1
StatelessWidget {
@override
Widget build(BuildContext context) {
// TODO: implement build
return SliverGrid(
gridDelegate: SliverGridDelegateWithFixedCrossAxisCount(
crossAxisCount: 2,
crossAxisSpacing: 8.0,
mainAxisSpacing: 8.0,
childAspectRatio: 0.8),
delegate: SliverChildBuilderDelegate((BuildContext context, int index) {
return Container(
child: Image.network(posts[index].imageUrl, fit: BoxFit.cover),
);
}, childCount: posts.length),
);
}
}
···ed

···1
StatelessWidget {
@override
Widget build(BuildContext context) {
// TODO: implement build
return SliverGrid(
gridDelegate: SliverGridDelegateWithFixedCrossAxisCount(
crossAxisCount: 2,
crossAxisSpacing: 8.0,
mainAxisSpacing: 8.0,
childAspectRatio: 0.8),
delegate: SliverChildBuilderDelegate((BuildContext context, int index) {
return Container(
child: Image.network(posts[index].imageUrl, fit: BoxFit.cover),
);
}, childCount: posts.length),
);
}
}
···ed

目标

我现在需要将···1···ed中的内容单独匹配出来,也就是一对···1···ed对应数组中的一个值。
自己捣鼓的表达式:\···1[\s\S]*...ed

仍存在的问题

上述的表达式会将全局的内容都匹配出来,所以希望各位大佬们帮帮忙。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

始终不够爱げ你 2022-09-19 01:17:33
var regex=/·{3}1([\s\S]*?)·{3}ed\b/mg;
var match=null;
var result=[];
while((match=regex.exec(str))!=null){
    result.push(match[1]);
}

由于你用的是贪婪模式的,所以会匹配全部,在*号后面加上?号,变成懒惰模式就可以了

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文