js中正则表达式的常用方法和引用

时间:2022-09-11 18:47:49

为什么要有正则表达式?

因为查找是一个比较复杂的东西,我们想要更准确得到自己想要的。

什么是正则表达式?

它可以定义一种字符串逻辑的公式,来和要查找的东西做匹配,找到自己想要的。

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

         2、新创键一个RegExp对象,给两个参数:规则和修饰符。

 

var str = "HelloCoolDog";
var patt = /HelloCoolDog/i;
var patt1 = newRegExp("hello","i")

 常用的修饰符:

  i:不区分大小写。

var checkCode = "HelloCoolDog";
var str = prompt("请输入验证码");
var patt = /hellocooldog/i
var result = str.search(patt);

 g:全局查找,一直查找到字符串结束。而search只查找到第一个匹配的值就结束。

字符模式

[hel]:从里面的中任意一个去匹配字符串

[0-9]:匹配所有数字

var str = "123456789HelloCoolDog";
var patt = /[a-z]/g;
var result = str.match(patt);
document.write(result);

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

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

var str = "123456789HelloCoolDog";
/*var patt = /[A-Z]/g;*/
var patt = /([a-z]|[A-Z])/g;
var result = str.match(patt);
document.write(result);

常用的元字符:
\w:单词字符 包括所有的字母数字和下划线。W是word的缩写。

var patt = /\w/g;

 

\s:空格(space的缩写)

var patt = /\s/g;

 

\d:数字 digital的缩写

var patt = /\d/g;

 

常用的量词

  var patt = /1*/g;//匹配0个或多个

 

var patt2 = /ca+/g;//匹配1个或多个

 

var patt2 = /ca?/g;//匹配1个或多个

指定具体个数:

var patt4 = /c{2}/g;//匹配两个c在一块

 

var patt4 = /c{24}/g;//匹配两个c,最多4个在一块

 

var patt4 = /c{2}/g;//匹配最少两个c在一块

 

RegEep常用的两种方法:

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

var result = patt.exec(str);
document.write(result)

 

  Test():返回的ture和false当字符串满足表达式为TRUE,不满足FALSE

var str =  prompt("请输入密码:")
 var
patt = /(^[a-z])|([A-Z]) \w{5,17}$/g;
if(patt.test(str)){
    alert("66")
}else{
    alert("55")
}