转义正则表达式中特殊字符

2018-5-10 10:25| 作者: admin| 查看: 268| 评论: 0|来自: 蚂蚁部落

正则表达式中有大量具有特殊意义字符,比如:

(1).点(.)匹配除了回车符(\r)和换行符(\n)之外的任意字符。

(2).星号(*)可以重复前面匹配的字符0次或者多次。

(3).加号(+)可以重复前面匹配的字符1次或者多次。

如果要匹配字符串中对应的特殊字符,需要将这些字符进行转义,代码实例如下:

[JavaScript] 纯文本查看 复制代码运行代码
let dotReg = new RegExp("\\.");
let dotStr = "abcdef.";
console.log(dotStr.match(dotReg));

上面代码通过转义,可以匹配字符串dotStr中的点(.)。

为什么需要使用两个反斜杠参阅构造函数方式创建正则表达式一章节。

下面分享一段代码实例,它可以实现将正则中常用特殊字符转义的功能,代码如下:

[JavaScript] 纯文本查看 复制代码
let encodeReg=(source)=>{
  return String(source).replace(/([.*+?^=!:${}()|[\]/\\])/g,'\\$1');
}

鲜花

握手

雷人

路过

鸡蛋

最新评论

返回顶部