正则表达式

xiaoxiao2021-02-28  113

正则表达式

为什么要有这个正则表达式:因为查找是一个比较复杂的东西,我们更加准确快速找到自己想要的:

什么值正则表达式,他可以定义一种字符逻辑的公式,来和要查找的字符串做匹配,找到自己想要的。

定义规则:1、使用/规则/修饰符

var patt1 =/HelloCoolDog/i;

 

  2、新创建一个RegExp对象,给两个参数分别为规则和修饰符

 var patt2 = new RegExp("//HELLO/","i");

常用修饰符:

i:不区分大小写

var checkCode = "helloCooldog"; var str = prompt("请输入验证码"); var patt = /hellocooldog/i; var result = str.search(patt); document.write(result+"<br>");

g:全局匹配:从找到的下标开始一直往后找,直到字符串结束

var  patt2 = /o/g; //g 全局查找 var result = str.replace(patt2,"O"); document.write(result);

字符模式:

[Hel]:从字符串里面任意去匹配字符串

var str = "He12ll255oCo66olDog"; var patt = /[Hel]/g; var patt1 = /[0-9]/g;

var patt2 = /[0-9]/ig;//ig既满足不区分大小写,又满足全局匹配 var result = str.match(patt1); document.write(result);

[0-9]:匹配任意一个数字,

 

[a-z]:匹配所有的小写字母

[A-Z]:匹配所有的大写字母

(a|x):匹配a或者x,a也能用[]

var patt3 = /([a-z]|[A-Z])/g;

 

常用的元字符:

/\w/:单词字符,包括所有字符和数字和下划线wword的缩写

var str = "_=++___%$#@!He12ll255oCo66olDog"; var patt = /\w/g;//word var result = str.match(patt); document.write(result);

 

\s:空格sspace的缩写

  var str = "_=++___%$#@  !He12ll255oCo66olDog";     var patt1 = /\s/g;     var result = str.replace(patt1,"^");     document.write(result);

\d:数字  digital的缩写

var patt = /\d/g;

常用的量词

o+:找到一个或者多个o

var patt = /o+/g;

o*找到0个或者多个

var patt1 = /o*/g;

o?找到0个或者1

var patt2 = /o?/g;

o{3}:指定了具体的个数只有3

o{2,4}:指定了具体至少2个最多4

o{2,}:指定了具体最少2

 var patt = /o{2}/g;//指定了o的个数 var patt = /o{2,4}/g;//指定至少2个最多4个 var patt = /o{2,}/g;//最少两个

^:必须以后面的内容开头 $:必须以后面的内容结尾

RegExp常用的两种方法:

Exec():返回的是找到符合正则表达式新的字符串

var patt = /\w+/g; var str = "good afternoon"; var result = patt.exec(str); document.write(result);

Test():返回的true或者false当字符串表达式满足正则表达式时为true否则为false

    var  str =prompt("请输入密码");     var patt = /^([a-z]|[A-Z])\w{5,17}$/;     if(patt.test(str)){         alert("您输入的密码正确");     }else{         alert("对不起,您输入的密码不符合规范");     }

 

转载请注明原文地址: https://www.6miu.com/read-61116.html

最新回复(0)