匹配被“{{"包围的文本和“}}" [英] Match text surrounded by "{{" and "}}"

查看:17
本文介绍了匹配被“{{"包围的文本和“}}"的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在寻找一个可以做到这一点的正则表达式:我的文字:

I'm looking for a Regex which can do this : My text :

"Blablabla {{ blabla1 }} blablablabla {{ blablabla2 {{ blabla3 }} }} blablabla"

我想提取的内容:

"blabla1" and "blablabla2 {{ blabla3 }}"

有人有想法吗?

我试过:"{{(.)*}}"但它返回 "blabla1""blabla3"

I tried with : "{{(.)*}}" but it returns "blabla1" and "blabla3"

推荐答案

您可以使用 平衡组 用于计数和匹配这样的嵌套结构.例如:

You can use balancing groups for counting and matching nested constructs like these. For example:

(?x) {{ ( (?: [^{}]+ | (?<open>{{) | (?<-open>}}) )* (?(open)(?!)) ) }}

这篇关于匹配被“{{"包围的文本和“}}"的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆