我遇到了“jquery_token_inpuy”的jquery代码问题
return template.replace(new RegExp(
"(?![^&;]+;)(?!<[^<>]*)(" + value + ")(?![^<>]*>)(?![^&;]+;)", "g"
), highlight_term(value, term));
我有这个错误:SyntaxError:无效的正则表达式:/什么都不重复。
有什么问题?
答案 0 :(得分:3)
您可以使用例程来“引用”所有元字符。这样的事情将是一个开始:
function regexSanitize( str ) {
return str.replace(/([.+*?:\[\](){}|\\])/g, "\\$1");
}
然后:
return template.replace(
new RegExp(
"(?![^&;]+;)(?!<[^<>]*)(" +
regexSanitize(value) +
")(?![^<>]*>)(?![^&;]+;)", "g"),
highlight_term(value, term)
);