0

我有我认为应该工作的 RegEx,但不是。

我想从 [[test]] 中获取“测试”。

我努力了:

\[\[(\w+)\]\]
\[\[([A-z]*?)\]\]
\[\[(.*?)\]\]

所有这些都抓住了整个事情。意思是,它抓取 [[test]],而不仅仅是内容。我不确定如何获得一个只会抓住“测试”而不是括号的正则表达式。

4

2 回答 2

0

您必须删除反斜杠。括号不需要被转义,您可以将模式表达式的一部分用“(”和“)”括起来:

[[\(\w\w*\)]]

或者

\[\[\([A-z][A-z]*\)\]\]

或者

\[\[[A-z][A-z]*\]\]

将正常工作。

于 2013-09-11T04:39:43.367 回答
0

那这个呢 ?

\[\[(.+)\]\]

指定您使用的语言可能是个好主意。这将确定您需要转义括号。

这在http://regexpal.com/上有效,如果您需要的话,它只会匹配单词字符。

\w+
于 2013-09-11T04:40:10.493 回答