正则表达式

126 阅读1分钟

一.正则表达式的作用

  1. 做字符串的增删改查。虽然js一些方法(比如:replace(),slice(),substr(),substring()等)都可以操作字符串,但是正则表达式更加强大,就好像老人机和智能机的对比。

二.正则表达式的创建方式

1.字面量创建

/u/
// 例 在一个字符串中查找某个字符(例如:a)是否存在
let str='abcdefgh';
let variable='d';
let isExist=/a/.test(str);
console.log(isExist) // true test()方法返回布尔值 在str中存在字符a;
console.log(/z/.test(str)) // false

// 例 在一个字符串中查找某个变量的字符 是否存在
// 在正则表达式中判断变量,要使用eval()方法
let isExist2=eval(`${/variable/}`).test(str);
console.log(isExist2) // true 在str中存在字符d;

总结:字面量的形式没法操作变量,只能通过eval()方法结合字符串模板才可以;

2.使用对象创建

new RegExp(字符,全局或忽略大小写那个标识);
例 在一个字符串中查找某个字符(例如:u)是否存在
let str='dhaguf';
let variable='u'
// 两种写法
let reg=new RegExp('u','g'); // 直接写字符;
let reg=new RegExp(variable,'g'); // 直接写变量名;
console.log(reg.test(str)) // true;

三.正则表达式选择符

1.选择符 或 |

// 判断一个电话号码是否是010或者020开头
let tel='010-9999999';
console.log(/(010|020)\-\d{7-8}/.test(tel)) // true;

正则表达式的符号解释