前端正则表达式书写以及常用的方法
0917自我总结
前端正则表达式书写
一.写法
写法一
/正则表达式/修饰符
修饰符
- /i (忽略大小写)
- /g (全文查找出现的所有匹配字符)
- /m (多行查找)
- /gi(全文查找、忽略大小写)
- /ig(全文查找、忽略大小写)
例子:/a/gi 查找内容中的a
不写修饰符默认只匹配一个
写法二
let a = new RegExp('/正则表达式/''修饰符')
二.常用几个方法
1.match
方法可在字符串内检索指定的值,或找到一个或多个正则表达式的匹配。
返回的内容
["匹配到的内容", index: 3, input: "字符串对象", groups: undefined]
如果regexp修饰符为/g则返回对象为一个数组
语法:
1.stringObject
.match
(str
)
2.stringObject
.match
(regexp
)
拿查找字符串abc 中的a举例
'aabc'
.match
('a'
) 只匹配第一个
'aabc'
.match
(/a/
) 只匹配第一个
2.replace
用于字符串中一些字符替换另一些字符,或替换一个与正则表达式相匹配的子串
语法:
1.stringObject
.replace
('查找的第一个字符串'
,'修改后的字符串'
)
2.stringObject
.replace
(regexp(正则表达式匹配到的内容所有替换)
,'修改后的字符串'
)
3.search
他用法与match类似不过他返回的是索引
语法:
1.stringObject
.search
('searchvalue'
)
2.stringObject
.search
(regexp
)
4.test
方法用于检测一个字符串是否匹配某个模式,如果字符串中含有匹配的文本,则返回 true,否则返回 false。
语法:
regexp
.test
(stringObject
)
如
/a/.test('a') #返回true
/a/.test('ac') #返回true
/a/.test('c') #返回false
5.exec
方法就是用来检索字符串中正则表达式的匹配,如果匹配到了那么就返回一个存放有结果的数组,如果没有匹配到就返回一个null
regexp
.exec
(stringObject
)
其实和match类似,不过就是填写的位置返一下
但是有一点
console.log('c'.exec('c')); #会报错
console.log('c'.match('c')); #会匹配c