怎样在JS中利用正则一次replace多个不同字符串
写成下面这样,有新的字符需要替换时你就只需要改map变量了let map = { "\u0026gt;": "\u0026amp;gt;", "\u0026lt;": "\u0026amp;lt;",}let reStr = \u0026#39;(\u0026#39; + Object.keys().map(it =\u0026gt; \u0026#39;\\\\\u0026#39; + it).join(\u0026#39;|\u0026#39;) + \u0026#39;)\u0026#39;let re = new RegExp(reStr, \u0026#39;g\u0026#39;)str.replace(re, it =\u0026gt; map)
■网友var result = str.replace(/\u0026amp;|\u0026lt;|\u0026gt;|\u0026#39;|"/g, function(matchStr) { var tokenMap = { \u0026#39;\u0026amp;\u0026#39;: \u0026#39;\u0026amp;amp;\u0026#39;, \u0026#39;\u0026lt;\u0026#39;: \u0026#39;\u0026amp;lt;\u0026#39;, \u0026#39;\u0026gt;\u0026#39;: \u0026#39;\u0026amp;gt;\u0026#39;, "\u0026#39;": \u0026#39;\u0026amp;apos;\u0026#39;, \u0026#39;"\u0026#39;: \u0026#39;\u0026amp;quot;\u0026#39; }; return tokenMap;});
■网友
这个是逻辑问题
正则不知道某个字符应该替换为什么字符
【怎样在JS中利用正则一次replace多个不同字符串】 不过可以使用数组逐一替换var a = \u0026#39;\u0026amp;\u0026lt;\u0026gt;\\\u0026#39;"\u0026#39;.split(\u0026#39;\u0026#39;);var b = \u0026#39;\u0026amp;amp;\\u0026amp;lt;\\u0026amp;gt;\\u0026amp;apos;\\u0026amp;quot;\u0026#39;.split(\u0026#39;\\u0026#39;);var s = \u0026#39;\u0026lt;abc="123"\u0026gt;\u0026#39;;for (i in a) { var p = new RegExp(a, \u0026#39;g\u0026#39;) s = s.replace(p, b);}console.log(s);
■网友
//gi abc是你想填的 括号子项好像有$1什么之类的可以匹配子项的。就可以替换$1(代码子项a)为你需要的。。具体代码不是这样,你得试一下
■网友
逻辑里面有个“或”。
推荐阅读
- 聪明人养花,这3种“花”怎样也要养一盆,每年能省不少医药费
- 河北承德危险废物综合利用处置率达100%
- 黄金时间■黄金时间丨打造海绵城市:节水从利用雨水开始
- 互联网怎样解决“家政服务上门速度慢”的问题
- 怎样看待从1月8号起,QQ钱包开始提现收费
- 银行it人怎样转型
- |淮阴水政充分利用“双随机”平台 促进执法公平公正
- 汽车|冬天怎样让车内温度快速升高?座椅加热的最佳使用方式二,外循环的作用总结
- 怎样进入通信行业
- 怎样评价扶他柠檬茶的小说《云养汉》的结尾
