正则表达式(英语:Regular Expression,在代码中常简写为regex、regexp或RE),计算机科学的一个概念。正则表达式 通常被用来检索、替换那些符合某个模式(规则)的文本。许多程序设计语言都支持利用正则表达式进行字符串操作
正则表达式用于定义一些字符串的规则,计算机可以根据正则表达式,来检查一个字符串是否符合规则,可以将字符中符合规则的内容提取出来
作用:正则表达式主要用来验证、搜索和替换
语法: var 变量=new RegExp (“正则表达式”,“匹配模式”);
使用typeof检查正则对象,则会返回object
var reg=new RegExp(“a”); 这个表达式可以用来检查一个字符串中是否含有字符a
在构造函数中可以传递一个匹配模式作为第二个参数
正则表达式的方法:
test()
- 使用这个方法可以用来检查一个字符串中是否符合正则表达式的规则
如果符合则返回true,否则返回false
检查一个字符串中的开头结尾
^ 表示开头
$ 表示结尾
例如:手机号的规则:
首先 13893443823(11位数字)
var reg=/^1[3-9][0-9]{9}$/
1.以1开头
2.第二位(3-9)
3.第三位以后任意9个数字
使用字面量来创建正则表达式
创建一个正则表达式检查一个字符串中是否含有a
var reg=/a/;
console.log(reg.test(“asdfsa”));
检查一个字符串中是否含有"."
".“表示匹配任意字符
在正则表达式中\反斜杠 作为转义字符
若想要匹配字符”."正则表达式为 .
\ 表示匹配一个反斜杠
var reg=/./;//匹配任意字符
reg=/./;//匹配“.”
console.log(reg.test(“hsdfs.sdfs.as”));
正则表达式默认是贪婪型的,通常的行为是匹配尽可能多的字符, 我们更需要懒惰匹配,也就是匹配尽可能少的字符。前面给出的重复元字符都可以被转化为懒惰匹配模式,只要在它后面加 上一个问号 ?