Javascript 正则表达式替换失败

Javascript 正则表达式替换失败,javascript,regex,Javascript,Regex,我想使用正则表达式替换此文本: [Button size="Big" color="#000"] test [/Button] 对于按钮,我使用了此站点,但没有使用替换。 正则表达式\[Button([^\]]*)\[/Button],它给我的结果字符串与替换前相同什么错误?您的正则表达式的([^\]]*)部分将在第一个标记的关闭]之前停止匹配。因此,您没有匹配字符串的模式-“]test” 将正则表达式修改为: \[Button([^\]]*][^\[]*)\[/Button] 试试这个,它

我想使用正则表达式替换此文本:

[Button size="Big" color="#000"] test [/Button]
对于
按钮
,我使用了此站点,但没有使用替换。
正则表达式
\[Button([^\]]*)\[/Button]
,它给我的结果
字符串与替换前相同什么错误?

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

将正则表达式修改为:

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

试试这个,它能很好地匹配,也能匹配内部

\[Button([^\]]*)\](.*?)\[/Button\]
的正则表达式

\[按钮。*\]


按钮的替换字符串应该足够了。

因为正则表达式是错误的。在这种情况下你不需要分组,在另一种情况下我需要分组你的代码正常工作,但我需要像我的code@magedali更新了正则表达式。当文本为
[Button size=“Big”color=“#000”]时,它不起作用[Small]test[/Small][/Button]
如何修复它?@magedali在嵌套标记的情况下不使用正则表达式。你应该解析文本。