正则匹配方法
正则对象底下的方法
let str = "abc123fda123";
let reg = /efg/g;
console.log( reg.test(str) );
- exec
- 匹配到返回第一次匹配到的结果、索引、匹配对象;匹配不到返回null
let str = "abc123fda1234";
let reg = /\d+/g;
console.log(reg.exec(str))
console.log(reg.lastIndex) 返回第一次匹配到的最后一位索引值
console.log(reg.exec(str))
字符串方法
let str = "abc11defghiej222k";
let reg = /\d+/g;
console.log( str.match(reg) );
let str = "abcdefghiejk";
let reg = /e/g;
console.log( str.search(reg) );
let str = "abc11defghiej222k";
let reg = /\d/g;
console.log( str.replace(reg,"*") );
let str = "abc123fda1234rt";
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));
let str = "123fdfs";
let reg = /\W+/g;
console.log( reg.test(str));
let str = "abcfdsadfs";
let reg = /\S+/g;
console.log( reg.test(str));
let str = "\r";
let str = `afb`
let reg = /a.b/;
console.log( reg.test(str));