JavaScript 正则表达式

正则表达式是由一个字符序列形成的匹配模式,可用于所有文本搜索和文本替换的操作。
正则表的是的格式
/表达式/修饰符(非必要添加)
比如我要定义一个a 的正则表达式

        var re = /a/;

也可以使用new来新建

      var re = new RegExp("a");

正则表达式的修饰符
i : 忽略大小写
g : 进行全局匹配(不会出现匹配到就忽略后半部分)
m : 匹配多行

方括号的使用
[abc] :匹配a或b或c(单字符)
[1-9] :匹配1~9的数字(字母也可用)

a|b :a或者b匹配(可以用做多字符)
元字符(拥有特殊意义的字符):
\d : 匹配数字
\s : 匹配空字符
\s : 匹配单词的边界
\uxxxx : 匹配十六进制的Unicode字符
量词:
n+ : 匹配至少包含至少一个n的字符串
n* : 匹配包含零个或多个n的字符串
n? : 匹配包含零个或一个n的字符串
^n : 以n为开头
n$ : 以n为结尾
正则表达式的使用
test()
检查是否符合匹配规则,返回规则为 true或false。

        var a = /a/;
        var b = "asdzxc";
        console.log(a.test(b));

在这里插入图片描述
exec()
返回一个数组,其中存放匹配的结果。如果未找到匹配,则返回 null

        var a = /as/;
        var b = "asdzxc";
        console.log(a.exec(b));

在这里插入图片描述
search()
会将匹配到的内容的位置返回出来

        var a = /d/;
        var b = "asdzxc";
        console.log(b.search(a));

在这里插入图片描述
match()
将匹配到的内容作为数组返回 没有匹配到就返回null(配合g查找整个字符串)

        var a = /d/g;
        var b = "adsdzzxdc";
        console.log(b.match(a));

在这里插入图片描述
replace()
可以用来替换匹配到的内容

      var a = /d/g;
        var b = "adsdzzxdc";
        console.log(b.replace(a , "替换"));

在这里插入图片描述
括号在正则中同样实用它的规则

        var a = /(a|x)d/g;
        var b = "adsdzzxdc";
        console.log(b.replace(a , "替换"));

在这里插入图片描述
常用的几个正则语句

// 信息中的邮件地址:\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*
            // 信息中的中国手机号码:(86)*0*13\d{9}
            // sql语句:^(select|drop|delete|create|update|insert).*$
            //正浮点数:^((0-9)+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*))$ 
            //URL:^[a-zA-Z]+://(\w+(-\w+)*)(\.(\w+(-\w+)*))*(\?\s*)?$ 或:^http:\/\/[A-Za-z0-9]+\.[A-Za-z0-9]+[\/=\?%\-
            //提取信息中的任何数字 :(-?\d*)(\.\d+)? 


  • 4
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值