JavaScript查找和替换特殊字符

3

我有一个字符串,它可能包含撇号(')或者和号(&)。我需要查找是否存在这两个字符中的任何一个或两个都存在。如果存在,则用'' 和/或 '& 替换。

trim(Pos_Query_Super.replace(/'/g,"''"))

我能否在上述条件中添加and/or条件,并使用javascript进行替换?这个开发是在一个流程IDE中进行的,我们可以使用JS表达式。

2个回答

2

是的,您可以使用函数基于匹配返回替换结果。

trim(Pos_Query_Super.replace(/'|&/g,function(match){
    return {
            '\'':'\''', 
            '&':'\'&'
           }[match]
}));

0

不要自己进行HTML转义映射。相反,使用DOM例程来完成:

function HtmlEscape(str) {
  const s = document.createElement('span');
  s.textContent = str;
  return s.innerHTML;
}

console.log(HtmlEscape("foo'bar&baz<div>Bob</div>"));

您会注意到,这里没有转义单引号 - 因为没有必要这样做。


"因为没有理由这样做" --- 你怎么知道呢? - zerkms
你怎么知道那里有? - user663031
我不知道 - 在未被证明之前,我相信操作员 :-) - zerkms

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接