js正则表达式小结

创建正则表达式

        var str='3ab1';
        var reg=new RegExp();//RegExp是一个对象。
        reg1=new RegExp('a');//最简单的正则表达式。
        alert(str.match(reg1));//匹配a

常用的规则

行定位符

^ 如果在行首表示行的开始
$ 表示行的结尾

模式修饰符

i 忽略大小写
g 全文查找
m 多行查找

转义字符

\

        var str='[31a';
        alert(str.match(/\[/));

反斜杠

\d [0-9] 匹配数字
\D [^0-9] 匹配非数字字符
\s [ \n\r\t\f\x0B] 匹配一个空白字符
\S [^ \n\r\t\f\x0B] 匹配一个非空白字符
\w [a-zA-Z0-9_] 匹配字母数字和下划线
\W [^a-zA-Z0-9_] 匹配除字母数字下划线之外的字符
\n 换行符

限定符

‘+’ 至少1个,最多不限(若干) {1,}
‘?’ 可有可无 {0,1}
‘*’ 可以没有,有了也不限 {0,}
‘.’ 任意东西

字符类[];

方括号: [ ]

  1. [abc] 任意一个 /a|b|c/
    /[a,b,c]/ a或者b或者c或者逗号
    /[a|b|c]/

  2. [0-9] 区间
    /[1-8]/
    /[a-z]/
    /[a-z0-9]/
    /[A-Za-z0-9]/
    /[1-48]/ 1-4或者8

  3. [^abc] 排除

    /^a/ 以字母a开头东西

量词

{n} 正好n个 /\d{2}/ , /\d{4}/ , /\d{700}/

{n,m} 最少n个,最多m个 /\d{1,2}/ , /\d{3,5}/

{n,} 最少n个,最多不限 /\d{2,}/ , /a{4,}/

例子

座机号:
010-8766532
0312-88562354
88562354
区号:
(0[1-9]\d{1,2}-)?
号码:
[1-9]\d{6,7}

邮箱:
abc@abc.com
/^\w+@[a-zA-Z0-9-]+(\.[a-zA-Z]{2,6}){1,2}$/
<!DOCTYPE html>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
        <title></title>
        <script type="text/javascript" language="javascript" src="http://apps.bdimg.com/libs/jquery/1.7.2/jquery.js"></script>

    </head>
    <body>
        <input type="text" id="input" class="form_item" name="info[tel]" placeholder="请输入购车人手机号" value="" />
        <input type="button" value="按钮" class="button" id="btn" />
        <script>
/*      
        var reg=/\d{3}/g;
        var str='2asa856-4';
        alert(str.match(reg));//匹配3个数字 */
        /*
        var str='af867y2_+@';
        var reg=/[_|+@]/g;
        alert(str.match(reg));*/
        /*
        var str='faf131';
        var reg=/^\d+$/g;//只能输入数字;
        alert(reg.test(str));*/
        /*
        var str='131';
        var reg=/^\d+$/g;//只能输入至少n位的数字;
        alert(reg.test(str));*/ 
        /*
        var str='13498';
        var reg=/^\d{1,5}$/g;//只能输入m-n的数字;
        alert(reg.test(str));*/
        /*
        var str='ahsssL';
        var reg=/^[a-zA-Z]+$/g;//只能输入字母;
        alert(reg.test(str));*/
        /*
        var str='ahsssL_14';
        var reg=/^\w+$/g;//只能输入数字,字母,以及下划线;
        alert(reg.test(str));*/

        /*
        var reg=/^1[0-9]{10}$/;
        $('#btn').click(function () {
            var str=$('#input').val();
            alert('str:'+str+'@'+reg.test($('#input').val()));
        });*/
        /*
        var str='3ab1';
        var reg=new RegExp();//RegExp是一个对象。
        reg1=new RegExp('a');//最简单的正则表达式。
        alert(str.match(reg1));*/

        var str='[31a';
        alert(str.match(/\[/));
        </script>
    </body>
</html>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值