一段html代码,我想把内容中的单引号、双引号转义。只是内容中的转义,标签里面的不能转义。
例如,下面一段代码:
<p id="p1" class='c1'>你好'某某',我是"谁谁"</p>
需要把它变为:
<p id="p1" class='c1'>你好'某某',我是"谁谁"</p>
利用javascript的replace方法替换。
请问,正则表达式该如何书写?
先在此谢过!
一段html代码,我想把内容中的单引号、双引号转义。只是内容中的转义,标签里面的不能转义。
例如,下面一段代码:
<p id="p1" class='c1'>你好'某某',我是"谁谁"</p>
需要把它变为:
<p id="p1" class='c1'>你好'某某',我是"谁谁"</p>
利用javascript的replace方法替换。
请问,正则表达式该如何书写?
先在此谢过!
/('|")(?=[^>]*<)/g
举个栗子:
javascript
var str='<p id="p1" class=\'c1\'>你好\'某某\',我是"谁谁"</p>'; var htmlspecialchars(char){ // 这个函数负责处理HTML Entities的转换,并返回结果 // 具体内容就不写了。 } console.log(str.replace(/('|")(?=[^>]*<)/g,htmlspecialchars));
不用谢,点赞采纳加关注。
'<p id="p1" class=\'c1\'>你好\'某某\',我是"谁谁"</p>'
.replace(/['"](?=[^>]*<)/g,function(m){
return ({"'":"'","\"":"""})[m]
})
10 回答11.7k 阅读
2 回答3.2k 阅读✓ 已解决
4 回答2.2k 阅读✓ 已解决
3 回答1.2k 阅读✓ 已解决
3 回答858 阅读✓ 已解决
3 回答1k 阅读✓ 已解决
2 回答1.2k 阅读✓ 已解决