我必须逃避两个特殊角色"并且,在具有以下规则的字符串中。
实施例: -
规则: -
请在javascript中推荐正则表达式。
答案 0 :(得分:5)
var test = [
'Mercu"ry', 'Mercu,ry', 'Mer"cu,ry', 'Mercury'
];
for (x in test) {
var s = test[x];
if (s.indexOf('"') != -1) {
s = s.replace(/"/g, '""');
}
if (s.match(/"|,/)) {
s = '"' + s + '"';
}
alert(s);
}
尝试使用Mer""cury
运行代码:)
答案 1 :(得分:2)
只需将单词用双引号括起来,并将所有双引号替换为两个:
function escapeWord(word) {
return '"' + word.replace(/"/g, '""') + '"';
}
答案 2 :(得分:1)
实现此目的的正则表达式为/"/g
,因此以下内容适用于您的示例:
var test1 = 'Mercu"ry'
var test2 = 'Mercu,ry'
var test3 = 'Mer"cu,ry'
var regex = /"/g;
var example1 = '"' + test1.replace(regex, '""') + '"';
var example2 = '"' + test2.replace(regex, '""') + '"';
var example3 = '"' + test3.replace(regex, '""') + '"';
alert(example1 + " : " + example2 + " : " + example3);