在学习JS正则表达式的时候,正好复习一下正则表达式。
正则表达式我们常用的是 元字符、限定符、反义。
正则表达式
(元字符)
匹配单词的开始或结束
d 匹配数字
s 匹配任意的空白符
w 匹配字母、数字、下划线或者汉字
. 匹配除换行符外所有的字符
^ 匹配字符串开始
$ 匹配字符串结束
(限定符)
* 重复零次或更多次
+ 重复一次或更多次
? 重复零次或者一次
{n}重复n次
{n,}重复n次或更多次
{n,m}重复n次或m次
(反义)
W 匹配不是数字、字母、下划线、汉字的字符
S 匹配非空白符的字符
D 匹配非数字的字符
B 匹配不是单词的开头或结束的位置
[^x] 除去x外的所有字符 进行匹配
[^abc] 除去abc外所有字符 进行匹配
JS正则表达式有两种表达方法:
1、使用字面量表示法:var express=/pattern/flags ,即 两个/之间是正则表达式、斜杠后面的flags是标志;flags有g (全局) i(忽略大小写) m(多行匹配)
2、使用new Regex(pattern,flags)创建
简单练习,使用JS匹配年月日:
var teststr = '2018-09-20;2020-11-2;221-7-1'; var express = /d{1,4}-d{1,2}-d{1,2}/; //判断年月日 console.log(express.test(teststr)); //true 表明目标字符串通过正则表达式测试