什么是正则表达式?
正则表达式是由一个字符序列形成的搜索模式。
当你在文本中搜索数据时,你可以用搜索模式来描述你要查询的内容。
正则表达式可以是一个简单的字符,或一个更复杂的模式。
正则表达式可用于所有文本搜索和文本替换的操作。
正则表达式可以校验手机号码邮箱等格式。自定义校验格式规则。
定义一个正则表达式后, 可以用正则表达式.test(xxxx) 来检验校验是否通过。 校验结果为true或者false
文档
基础写法
xxx=new RegExp(“规则”,“匹配模式”)
下面打印结果为true,因为str里面有a
//匹配模式 i 表示忽略大小写, g表示全局匹配模式
var reg=new RegExp("a","i");
var str="a";
console.log(reg.test(str));
字面量创建正则写法
var reg=/规则/匹配模式;
写法简单,与正常构造函数方法创建达到效果相同,但构造函数方法创建比较灵活, 表达式可以使用变量
var reg=/a/i;
var str="a";
console.log(reg.test(str));
- 一些常用规则:
//创建一个正则表达式, 检测一个字符串中是否有a或者b |表示或者
var reg=/a|b/;
var str="a";
var str1="b";
var str2="c";
console.log(reg.test(str));
console.log(reg.test(str1));
console.log(reg.test(str2));
//创建一个正则表达式, 检测一个字符串中是否有字母 [] 中括号里面也是或的关系[abc]就是a或者b或者c [a-z] 代表a到z
var reg=/[a-z]/;
var str="123c";
console.log(reg.test(str));
//检查一个字符串中是否含有abc或者adc或者aec 由于a c 固定, 所以中间用或者[]
var reg=/a[bde]c/;
var str='abc';
var str1='adc';
var str2='aec';
console.log(reg.test(str));
console.log(reg.test(str1));
console.log(reg.test(str2));
// [^xx] 除了xxx都可以 除了xx之外的东西,还有别的就能true
var reg=/[^ab]/;
var str='a';
var str1='b';
var str2='abc';
console.log(reg.test(str));
console.log(reg.test(str1));
console.log(reg.test(str2));