我尝试更改代码突出显示标签,以匹配Alex Gorbatchev的语法荧光笔。
这是我的源代码的样子:
[csharp]//awesome code[/csharp]
这应该是这样的:
<pre brush: csharp>//awesome code</pre>
我想将允许的标签放入数组中。所以伪代码将是这样的:
$.each(allowedValues,function(index,value){
MagicReplaceFunction(value);
}
所以在我从代码突出显示器
调用方法之前,我需要更改标签jQuery可用。
答案 0 :(得分:1)
使用string.replace
功能。
> "[csharp]//awesome code[/csharp]".replace(/\[csharp\]([\s\S]*?)\[\/csharp\]/g, "<pre brush: csharp>$1</pre>")
'<pre brush: csharp>//awesome code</pre>'
[\s\S]*?
非贪婪地匹配任何空格或非空格字符。所以,
\[csharp\]
匹配起始[csharp]
代码。([\s\S]*?)
捕获任意数量的中间字符。\[\/csharp\]
匹配结束[/csharp]
代码。<pre brush: csharp>
加上组索引1加</pre>
内的字符将为您提供所需的输出。