我尝试用
JavaScript编写一个简单的Markdown解析器.因此,我想检查[link content] [link id]语法.我使用以下代码:
data = data.replace( /\[(.*?)\][ ]*\[([0-9]+)\]/g,'<a href="$2">$1</a>' );
它工作得很好,但现在我想用RegExp对象来做这件事.所以我设置了以下代码:
var r = new RegExp( '\[(.*?)\][ ]*\[([0-9]+)\]','g' ); data = data.replace( r,'<a href="$2">$1</a>' );
但它不起作用.它甚至说我的正则表达式(自第一个例子以来工作得很好)是无效的:
unmatched ) in regular expression
我认为它必须与我不知道的一些RegExp-object特性有关.
我做错了什么,问题怎么解决?