2013-04-27 182 views
1

我需要正则表达式来检索两对{{}}之间的字符串,非格子,忽略几个特殊字符。例如:正则表达式来检索两对大括号之间的字符串

正文: {{Lorem((ipsum dolor [[sit amet]],consectetur))adipiscing}} {{elit。 ((PROIN eget [[蚤坐]]阿梅特))直径}}

目标: 将匹配以下2个匹配:

  1. Lorem存有悲坐阿梅德,consectetur adipiscing
  2. elit。 PROIN eget猫坐阿梅德直径

所有的比赛应该是没有partenless,括号和括号

+0

看到这里http://stackoverflow.com/questions/1454913/regular-expression-找到一个字符串包含在两个字符之间虽然排除它可能会帮助您 – samba 2013-04-27 06:55:30

+0

您可以匹配使用此模式“{{[^}] *}}”然后用空字符替换少数特殊字符 – Civa 2013-04-27 07:02:34

+1

如果相同类型的大括号可以无限嵌套,则不能在单个正则表达式中完成。你在用什么语言? – 2013-04-27 07:02:37

回答

1

所有的比赛应该是没有partenless,支架和 括号

匹配是原始字符串的子字符串,你不能在它们之间存在空隙,所以你所要求的是不可能的。

可以匹配整个字符串,然后在你喜欢的编程语言过滤掉不需要的字符...

{{.*?}} 
+0

@WesleyBaugh:亲爱的downvoter,不,你BSING ...:/ {lookahead/behind} {{}}可能,但不适用于其他大括号。正则表达式的能力是相当有限的,不仅仅是你的想象力...... – 2013-04-27 07:14:54

+2

大声笑。我在等待解决他的问题的不可能答案。干杯。 – 2013-04-27 07:16:58

相关问题