匹配内部代码,无论任何包装文本

时间:2015-06-11 20:03:03

标签: javascript regex

如果我有一个字符串:

[code]var foo = {
    bar: 'bar',
    baz: 'baz'
};[/code]

我可以使用/^(?:\[code\])?([\s\S]*?)(?:\[\/code\])?$/i获取内部文字(在[code][/code]之间),无论它是否被代码标记包围。

我想做的是让开始和结束标签更加模糊。我通过用户选择内部代码得到这个文本,因此选择可能不完美,选择可能是代码标签。选择可能是这样的:

ode]var foo = {
    bar: 'bar',
    baz: 'baz'
};[/co

但我仍然只想要内部代码。什么是匹配代码代码的最佳方式,即使不是全部匹配代码代码?

1 个答案:

答案 0 :(得分:2)

您只能使用括号代替完整标记,如下所示:

\]([\s\S]*?)\[\/

<强> Working demo