正则表达式(二)正则对象下的方法、字符串方法、元字符

正则匹配方法

正则对象底下的方法

  • test
    • 匹配到返回true;匹配不到返回false
let str = "abc123fda123";
// let reg = /\d+/g;
let reg = /efg/g;
console.log( reg.test(str) );
  • exec
    • 匹配到返回第一次匹配到的结果、索引、匹配对象;匹配不到返回null
let str = "abc123fda1234";
let reg = /\d+/g;
console.log(reg.exec(str))  //["123", index: 3, input: "abc123fda1234", groups: undefined]
console.log(reg.lastIndex) 返回第一次匹配到的最后一位索引值
console.log(reg.exec(str))  //基于第一次结果再次匹配,返回第二次匹配到结果

字符串方法

  • match
    • 验证,返回匹配到的结果
let str = "abc11defghiej222k";
let reg = /\d+/g;
console.log( str.match(reg) );
  • search
    • 查找,返回查找结果索引
let str = "abcdefghiejk";
let reg = /e/g;
// let reg = /z/;
console.log( str.search(reg) );
  • replace
    • 替换,返回替换后的结果,适用于敏感信息加密
let str = "abc11defghiej222k";
let reg = /\d/g;
console.log( str.replace(reg,"*") ); 
  • split
    • 分割,返回以匹配字符分割后的数组
let str = "abc123fda1234rt";
// let arr =  str.split(1);
let arr =  str.split(/\d+/);
console.log(arr);

元字符

  • 正则表达式中有特殊含义的非字母字符;
    ​- 字符类别(Character Classes)
    • .
      • 匹配行结束符(\n \r \u2028 或 \u2029)以外的任意单个字符
      • 字符集合(Character Sets) 中,. 将失去其特殊含义,表示的是原始值
    • \
      • 转义符,它有两层含义
        • 表示下一个具有特殊含义的字符为字面值
        • 表示下一个字符具有特殊含义(转义后的结果是元字符内约定的)
    • \d 匹配任意一个阿拉伯数字的字符
    • \D 匹配任意一个非阿拉伯数字的字符
    • \w 匹配任意一个(字母、数字、下划线)的字符
    • \W 匹配任意一个非(字母、数字、下划线)的字符
    • \s 匹配一个空白符,包括空格、制表符、换页符、换行符和其他 Unicode 空格
    • \S 匹配一个非空白符
\w :数字、字母、下划线;
let str = "~123fdfs";
let reg = /\w+/g;
console.log( reg.test(str));
// \W :非数字、字母、下划线;
let str = "123fdfs";
let reg = /\W+/g;
console.log( reg.test(str));

// \s :匹配空格;
let str = "abcfdsadfs";
// let reg = /\s+/g;
let reg = /\S+/g;
console.log( reg.test(str));

// . : 非 \n \r \u2028 \u2029;
let str = "\r";
let str = `afb`
let reg = /a.b/;
console.log( reg.test(str));
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值