繁体   English   中英

如何在JavaScript中包含单引号的另一个字符串中转义单引号?

[英]How to escape single quote within another string which contains single quote in javascript?

嗨,我想在另一个字符串中转义单引号。

我有以下字符串:

'I'm a javascript programmer'

在上面的字符串中,我需要转义单引号

预期的输出是:

'I\'m a javascript programmer'

我需要在JavaScript中的eval()中进行处理。

字符串会像这样...

"[['string's one','string two','string's three']]"

如何解决这个问题。 提前致谢...

var s = "my string's"
s = s.replace(/'/g, "\\'");

转义html字符串中引号的正确方法是使用字符实体。

'I'm a javascript programmer'

双引号也是如此:

'"I'm a javascript programmer"'

您可以尝试先行断言以获得所需的效果:

var str = "'I'm a javascript's programmer'";
str = str.replace(/(?!^)'(?!$)/g, "\\'");

小提琴 )。 与西蒙的回答,这也可以对付双单引号( '' )。

否定的超前断言(?! )本身不会进行任何匹配,但可以确保断言的表达式不会在给定的位置发生(即,字符串^开始不会在引号和字符串$结束之前出现)在引号后出现)。

这可以解决问题:

var str = "'I'm a js programer.'";
str.replace(/(\w)'(\w)/g, "$1\\\'$2");

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM