正则表达式
为什么要有这个正确表达式:因为查找是一个比较复杂的东西,我们更加准确快熟找到自己想要的东西
什么是正则表达式:他可以定义一种字符串逻辑的公式,来和要查找的字符串做匹配,找到自己想要的
定义规则:1、使用/规则 修饰符
var pott1 = /HelloCoolDog/i;
2、新创建一个RegExp对象,给两个参数分解为规则和修饰符
var patt1 = new RegExp("HELLO","i");
常用的修饰符
i:不区分大小写
var str= "HelloCoolDog";
var pott1= /HelloCoolDog/i;
//i 不区分大小写
var pott2= /o/g;
//全局查找
var resylt= str.replace(pott2,"O");
document.write(resylt)
g:全局匹配,从找到的下一个下标开始再继续往后查找,一直到字符串结束。
var pott2= /o/g;
//全局查找
var resylt= str.replace(pott2,"O");
document.write(resylt)
字符模式
[hel]:从里面字符中任意一个区匹配
var str = "HelloCoolDog";
var pott= /[Hel]/g; //找到全部的 h e l
var result= str.match(pott); //找到一个O
document.write(result);
[0-9]
var str= "H1el4loCo5olD7og";
var pott1= /[0-9]/g; //找到全部的 h e l
var result= str.match(pott1); //找到一个O
document.write(result);
[a-z]:找到全部的字母 大写也一样
var str= "H1el4loCo5olD7og";
var pott1 = /[a-z]/g; //找到全部的字母
var result= str.match(pott1); //找到一个O
document.write(result);
[a-z]|[A-Z]
找到全部的字母
var str= "H1el4loCo5olD7og";
var pott1= /([a-z]|[A-Z])/g; //找到全部的大小写
var result= str.match(pott1); //找到一个O
document.write(result);
常用的元字符:
\w :单词字符 包括所有字母和数字和下划线w 是 word的缩写
var str= "H1el4loCo5olD7og";
var patt = /\w/g; //word转化成一个一个的字符
var result= str.match(patt);
document.write(result);
\s : 空格 s 是sqace 的缩写
var str = "H1 el4loCo5olD7og";
var patt= /\s/g; // spoce 空格的缩写
var result= str.replace(patt, "&"); //取代
document.write(result);
\d :数字 digital的缩写
var patt= /\d/;
常用的量词
o+ :找到多个o
var pott = /o+/g; //匹配一个或者多个
oo* :找到一个或多个o
var pott1 = /oo*!/g; //匹配0个或者多个
oo?:找到0个或1个
var pott2 = /oo?/g; /
o[3]:指定具体的个数
var pate = /o{3}/g; //指定了o的个数
o[2,3]:指定一个有范围的区间最少2个对多3个
var pate1 = /o{2,3}/g; //指定至少2个或3个
RegExp 常用的两种方法
Exec() :返回的是找到符合正则表达式新的字符串
Test() :返回的True或者Fales当字符串满足正则表达式时为true否则为false
ar str = prompt("请输入密码");
var patt= /^([a-z]|[A-Z])\w{5,17}$/;
if(patt.test(str)){
document.write("您输入的密码正确");
}else{
document.write("对不起,您输入的密码不正确");
}