我试图解析这样的长字符串:
asfdasdlfkjdk&dasfdas&asdfkjsdakldfjk&
产生以下输出:
asfdasdlfkjdk&dasfdas&asdfkjsdakldfjk&
基本上,我只需要替换未编码为字符串值的任何“&”号即可:
& => &
我可以用字符串替换来做到这一点,但是我会冒这样的风险:
&
最佳答案
你可以写:
var result = orig.replace(/&(?!amp;)/g, '&');
其中
(?!...)
表示zero-width negative lookahead assertion,表示“此位置后没有...
。或者,您可以编写以下代码:
var result = orig.replace(/&(?:amp;)?/g, '&');
它将用
&
替换&
或&
。