我正在创建一个bookmarklet,我必须避免使用双引号("),因为我必须在HTML页面中包含bookmarklet,并且它在使用双引号的字符串中:
<a href="javascript:...">
在某些地方,我必须使用代码replace(/".*/, '');
在sed中,我可以使用\x22
转义双引号(22是双引号的ASCII十六进制代码)
是否可以在replace(/\x22.*/, '');
这样的JavaScript中执行类似操作?
答案 0 :(得分:1)
您可以使用其他语法制作RegExp并使用String.fromCharCode
以下是一个例子:
'"hello"'.replace(new RegExp(String.fromCharCode(34), 'g'), '-quotes-')
-->
'-quotes-hello-quotes-'
答案 1 :(得分:1)
与在任何HTML属性的值中使用引号的方式相同。
例如
<img src="..." alt="A picture of Bob "e;Wild Man" Johnson">
所以对你来说
<a href="javascript:replace(/".*/, '');">