2013-10-27 116 views
2

我想用正则表达式来此的文本替换:正则表达式替换失败

[Button size="Big" color="#000"] test [/Button] 

Button,我用这个网站http://www.freeformatter.com/regex-tester.html但运行不正常的更换。
正则表达式\[Button([^\]]*)\[/Button],它给我的结果String is same as before replace!有什么错误?

+0

因为正则表达式是错误的。 – MightyPork

+0

你不需要分组在这种情况下 – cristobalito

+0

我需要它在另一种情况下 –

回答

2

([^\]]*)您的正则表达式的一部分将在第一个标记的闭合]之前停止匹配。所以,你没有匹配字符串的模式 - "] test "此后。

修改你的正则表达式:

\[Button([^\]]*][^\[]*)\[/Button] 
+0

你的代码工作,但我需要'大小=“大”彩色=“#000”]测试'组像我的代码 –

+0

@magedali更新正则表达式。 –

+0

谢谢.... :) –

1

这种尝试,它匹配适当,也符合内部。

\[Button([^\]]*)\](.*?)\[/Button\] 
0

\[Button.*\]

Button替换字符串应该是足够的正则表达式。