我有一个字符串,它可能包含撇号(')或者和号(&)。我需要查找是否存在这两个字符中的任何一个或两个都存在。如果存在,则用''
和/或 '&
替换。
trim(Pos_Query_Super.replace(/'/g,"''"))
我能否在上述条件中添加and/or条件,并使用javascript进行替换?这个开发是在一个流程IDE中进行的,我们可以使用JS表达式。
我有一个字符串,它可能包含撇号(')或者和号(&)。我需要查找是否存在这两个字符中的任何一个或两个都存在。如果存在,则用''
和/或 '&
替换。
trim(Pos_Query_Super.replace(/'/g,"''"))
我能否在上述条件中添加and/or条件,并使用javascript进行替换?这个开发是在一个流程IDE中进行的,我们可以使用JS表达式。
是的,您可以使用函数基于匹配返回替换结果。
trim(Pos_Query_Super.replace(/'|&/g,function(match){
return {
'\'':'\''',
'&':'\'&'
}[match]
}));
不要自己进行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>"));
您会注意到,这里没有转义单引号 - 因为没有必要这样做。