正则表达式

正则表达式:regular expression(reg)

  • 在开发过程中,要经常处理一些字符串匹配和搜索都需要匹配当前字符串内容,这个时候需要用到正则表达式。
  • 在js当中正则是一个对象

两种创建正则的方法:

构造函数创建正则,参数是正则的字符串

var r1 = new RegExp("\d");

字面量创建:直接将字符串写在//中间


基础格式:

1. 匹配一个数字字符。等价于[0-9]  \d  

var r2 = /\d/;

2. ^表示匹配字符串的开头值 ^abc表示是否以abc开头

var r3 = /^abc/;

3. 字符串必须以abc结尾

var r4 = /abc$/;

4. 检测当前字符串是否为abc

var r5 = /^abc$/;

5. 是否包含有两个连续的数字

var r6 = /\d\d/;

6. {}表示位数的匹配  前边的数字是要连续出现的次数

    是否包含连续的六个数字{6}

    ^\d{3,6}$出现3到六次

    {3,}出现3或者3次以上

var r7 = /^\d{3,6}$/;

7. \w表示匹配数字,字母,下划线

var r8 = /^\w$/;

8. []表示一个字符区间 意味着这个位置必须是本区间内的任意一个字符 

    一个[]表示一个字的位置

var r9 = /^[12345abcde]$/;

9. []中除了写多个字符以外,还可以写unicode编码区间,两个字符中间用-代表,例如0-9表示数字

var r10 = /^[0-9a-zA-Z]$/;

10. Unicode编码中的汉字范围 

var r11 =/^[\u2E80-\u9FFF]+$/;

11. 判断字符串为不为中文

var r12 = /^[\u4e00-\u9fa5]$/;

12. +代表匹配一位或多位和{1,}

13. 邮箱正则

var r13 = /^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/;
var email = /^\w+@\w+\.\w+$/;

14. 手机正则

var phone = /^1[3456789]\d{9}$/;

 15. 正则中() 是提取匹配的字符串。表达式中有几个()就有几个相应的匹配字符串


方法:

test();

参数是一个字符串,用于判断字符串内容符合不符合正则表达式匹配返回true 不匹配返回false

console.log(phone.test("15978507331"));

exec();

正则表达式除了进行字符串匹配还可以用来搜索

var str = "abc345g,abc123abcdefg331,a";
// g代表关键字 代表找到匹配当前正则的索引
var abcReg = /\d{3}/g;
var value = "";
var arr = [];
// 赋值语句可以当做一个表达式,表达式的值就是右部分的值
while (value = abcReg.exec(str)) {
    //[ '345', index: 3, input: 'abc345g,abc123abcdefg331,a' ]
    arr.push(value);
}

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值