您好我想在另一个字符串中转义单引号。
我有以下字符串:
'I'm a javascript programmer'
在上面的字符串中,我需要转义单引号
,预期输出为:
'I\'m a javascript programmer'
我要求在javascript中处理eval()。
字符串就像这样...
"[['string's one','string two','string's three']]"
如何解决这个问题。提前谢谢......
答案 0 :(得分:0)
var s = "my string's"
s = s.replace(/'/g, "\\'");
答案 1 :(得分:0)
在html字符串中转义引号的正确方法是使用字符实体。
'I'm a javascript programmer'
双引号也是如此:
'"I'm a javascript programmer"'
答案 2 :(得分:0)
您可以尝试lookahead assertions来达到预期的效果:
var str = "'I'm a javascript's programmer'";
str = str.replace(/(?!^)'(?!$)/g, "\\'");
(Fiddle)。与Shimon的答案不同,这也可以处理双引号(''
)。
否定前瞻断言(?! )
本身不进行任何匹配,但它确保断言的表达式不会发生在给定位置(即字符串^
的开始不会发生在报价后不会出现引号和字符串$
的结尾。)
答案 3 :(得分:0)
这可以解决问题:
var str = "'I'm a js programer.'";
str.replace(/(\w)'(\w)/g, "$1\\\'$2");