摘要:正则表达式Regular Expression 使用单个字符串描述、匹配一系列符合某个句法规则的字符串.代表任意字符+代表一个或多个()可以对其分组,$1可以获取分组的内容\\d代表数字{}中
正则表达式
Regular Expression 使用单个字符串描述、匹配一系列符合某个句法规则的字符串
.
代表任意字符
+
代表一个或多个
()
可以对其分组,$1
可以获取分组的内容
\\d
代表数字
{}
中可以写个数
[]
中的元素是或的关系
^
标示开头
$
表示结尾
\\b
代表单词边界
var reg = / \\bis\\b /g; 匹配is字符
g
代表global 全局替换,不添加的话,搜索到第一个就匹配停止了
i
ignore case忽略大小写,默认大小写敏感
m
multiple lines多行搜索 将字符串中的换行符也当做一行
原义文本字符
例如: a b c
元字符
在正则表达式中有特殊含义的非字母字符
* + ? $ ^ . | \\ () {} []
字符类[] 来构建一个简单的类,所谓的类是指符合某些特性的对象,是一个泛指而不是特指某个对象
[abc]就是有其中的任意一个即可
字符类取反加上^符号
[^abc]匹配abc以外的字符
范围类[a-z]来表示从a到z的任意字符这是个闭区间 也表示a和z的本身如果想匹配横线,可以直接在后边加一个 [a-b-]js预定义类>'12345678'.replace(/\\d{3,6}/,'X') .>"X78"
正则表达式默认会最多去匹配
想使用飞贪婪模式 在量词后加上?
即可
>'12345678'.replace(/\\d{3,6}?/,'X') .>"X45678"分组
beyond{3} 是把d出现三次 量词作用于紧挨着的单词
(beyond){3}整个单词出现了三遍
反向引用
>'2017-06-29'.replace(/(\\d{4})-(\\d{2})-(\\d{2})/,'$3/$2/$1') .>"29/06/2017"
将每个小括号中的内容作为一个对象,可以使用这个对象
忽略分组
如果不想捕获某个分组,在分组内加上?:
即可
推荐教程:《JS教程》
相关文章推荐
网站谷歌评分90+意味着什么?2022-09-06
怎样将不安全网站变成安全网站访问?2022-09-26
网站排名下降,可能跟算法更新没关系2022-09-20
网站如何设置高质量的网页标题?2022-09-14
做外贸网站选哪些语言?法语、德语最吃香2022-09-13