match
返回找到的内容
str.match(/正则/)
search
返回找的下标
str.search(/正则/)
replace
替换字符串
str.replace(regexp/str,替换的内容)
split
切割字符串返回切割后的字符数组
str.split(regexp/str)
regexp.exec
返回匹配项如果没有返回null
regexp.exec(str)
regexp.test()
验证字符串是否匹配正则,返回boolear
regexp.test(str)
表达式
- 简写数字检索 [0-9]
- 字母 [a-z] [A-Z] [A-Za-z]
- 汉字 [\u4e00-\ugfa5]
- 除了 [ ^xxx]
- 预定义字符集
- 数字 \d
- 字母数字下划线 \w
- 空字符串 \s
- 量词
- {n,m} {n,} {n}
- ? 可有可无
- “*” 不限
- ‘+’ 至少出现一次
- 匹配
- 开始 ^
- 结束 $
- 将贪婪转为懒惰模式
- .*?
- [ ^xxx]*?
es6新增
构造函数
new RegExp('xxx/igm','i')
// 第二个参数(修饰符)会覆盖前面的修饰符
/*
属性
flage ===> 返回表达式的修饰符
stycky
修饰符
y 和 g 类似(全文匹配)
区别: g后面有就可以; y从匹配后的第一个开始算
*/
{
let str = 'bbb_bb_b';
let reg1 = /b{2,}/g;
let reg2 = /b{2,}/y;
console.log(reg1.exec(str),reg2.exec(str))
}
/*
u 正确处理大于uFFFFF的Unicode字符
*/
{
console.log(/^\uD83D/u.test('\uD83D\uDC2A'))
}