正则表达式
正则表达式
测试正则表达式
test()
正则对象方法,用于检测字符串是否符合该规则
1 | regexObj.test(str) |
边界符
用来提示字符所处的位置,主要有两个字符
^
表示匹配行首的文本(以谁开始)
$
表示匹配行尾的文本(以谁结束)
1 | let rg = /abc/; //正则表达式里面不需要加引号,不管是数字型还是字符串型 |
字符类
[]
表示有一系列字符可供选择,只要匹配其中一个即可
1 | let rg = /[abc]/; //只要包含a或b或c都返回true |
如果==中括号==里面有^表示取反的意思
1 | let reg2 = /^[^a-zA-Z0-9_-]$/; |
量词符
用来设定某个模式出现的次数
符号 | 说明 |
---|---|
* | 相当于>=0 可以出现0次或多次 |
+ | 相当于>=1 可以出现1次或很多次 |
? | 相当于 1||0 |
{3 } | 就是出现3次 |
{3,} | 大于等于3次 |
{3,16} | 大于等于3 并且小于等于16 |
1 | let reg = /^[a-zA-Z0-9_-]{6,16}$/; |
预定义类
预定义类指的是某些常见模式的简写方式
预定义类 | 说明 |
---|---|
\d | 匹配0-9之间的==任意一个==数字,相当于[0-9] |
\D | 匹配所有0-9以外的字符 |
\w | 匹配任意的字母、数字、下划线,相当于[A-Za-z0-9_-] |
\W | 匹配除所有字母、数字、下划线以外的字符 |
\s | 匹配空格(包括换行符、制表符、空格) |
\S | 匹配非空格的字符 |
正则表达式参数
/表达式/[switch]
switch(也称为修饰符)按照什么样的模式来匹配,有三种值
- g:全局匹配
- i:忽略大小写
- gi:全局匹配+忽略大小写
replace替换
replace()
方法可以实现替换字符串操作,用来替换的参数可以是一个字符串或者是一个正则表达式
stringObject.replace(regexp/substr,replacement)
- 第一个参数:被替换的字符串或者正则表达式
- 第二个参数:替换为的字符串
- 返回值是一个替换完毕的新字符串
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 Serendipity!