正则表达式整理

正则表达式定义方法:
1、直接量定义法:
/表达式/修饰符
2、正则对象方法:
var reg = new RegExp( 表达式 , 修饰符 );
修饰符
i 忽略大小写
m 多行匹配
g 全文匹配
指定匹配位置
^ 匹配字符串的开头
$ 匹配字符串的末尾
字符类
[…] 匹配方括号内的任意字符
[^…]匹配不在方括号内的任意字符
. 除了换行符以外任意字符
\w 代表的是字母数字下划线 [a-zA-Z0-9_]
\W 代表的是非字母数字下划线
\d 代表数字 [0-9]
\D 非数字 [^0-9]
\s 空格字符
\S 非空格字符
\b 单词的边界(以非数字字母下划线做分割)
\B 非字边界匹配。
字母和数字字符
\t 制表符(Tab)
\n 换行符
\r 回车符
选择
| 或者
分组
() 将多个匹配项组合为一个整体
设置重复的次数
{n} 匹配前一项n次
{n,m} 匹配前一项最少n次,最多m次
{n,} 匹配前一项最少n次
? 匹配0到1次 {0,1}
+ 匹配1到多次 {1,}
* 匹配0到多次 {0,}

注:常用需要转义的字符: [ ] {} () ? * + / ^ $ .

检测正则表达式的方法
1、test()正则方法:判断字符串是否与正则相匹配
reg.test(str)
匹配成功返回:true
匹配失败返回:false

2、exec()正则方法:判断字符串是否与正则相匹配
reg.exec(str)
匹配成功返回:数组
匹配失败返回:null
数组说明:
数组的第一个元素:匹配的内容
数组的index元素: 匹配内容的第一个字符索引下标
数组的input元素: 原始字符串
注:引用index元素用reg.exec(str).index

3、search()字符串方法:找出与正则匹配的字符串的下标
(不支持全局匹配)(不能用g)
str.search(reg)
匹配成功返回:下标
匹配失败返回:-1

4、replace()字符串方法:替换符合正则表达式的字符串
str.replace(reg,“替换的字符”);
匹配成功返回:替换后的新字符串,原字符串不变
匹配失败返回:原字符串

5、match()字符串方法:判断字符串是否与正则相匹配
str.match(reg)
匹配成功返回:数组
匹配失败返回:null
数组说明:
匹配到的字符
注:若只匹配到一个字符时结果与exec()方法返回值相同
注:引用index元素用str.match(reg).index

常用的正则表达式:
用户名
/1{3,16} / 密 码 / [ a − z 0 − 9 − ] 6 , 18 / 密码 /^[a-z0-9_-]{6,18} //[az09]6,18/
电子邮箱
/^([a-z0-9_.-]+)@([\da-z.-]+).([a-z.]{2,6})KaTeX parse error: Expected 'EOF', got '\d' at position 10: / /^[a-z\̲d̲]+(\.[a-z\d]+)*…/
URL
/^(https??/)?([\da-z.-]+).([a-z.]{2,6})([/\w .-])/?$/


  1. a-z0-9_- ↩︎

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值