求一个日历效果

发布于 2022-09-01 20:52:01 字数 2779 浏览 13 评论 0

正则的两种写法

var re=//;
var re=new RegExp();

正则方法test 正则去匹配字符串,匹配成功true,不成功false

        var str='abcdef';
        var re=/b/;
        alert(re.test(str));//true

正则方法Search 正则去匹配字符串,匹配成功,返回匹配位置,不成功返回-1

        var str='abcdef';
        var re=/C/i;
        alert(str.search(re));//2

正则方法match 正则去匹配字符串,匹配成功就返回匹配成功的数组,不成功返回null

        var str='sdf12ssdf2646sdfe';
        var re=/\d+/g;
        alert(str.match(re));

正则方法replace 正则去匹配字符串,匹配成功字符去替换成新的字符
replace:第二个参数,可以是字符串,也可以是一个回调函数

        var str='aaa';
        var re=/a/g;
        str=str.replace(re,'b');
        alert(str);//bbb;

转义字符

        \s:空格  
        \S:非空格
        \d:数字
        \D:非数字
        \w:字符    (字母,数字,下划线_)
        \W:非字符
        \b:独立的部分(起始,结束,空格)
        \B:非独立的部分
         .:任意字符
        \.:真正的点
        

写法

//正则默认是区分大小写的
i : 不区别大小写,写到正则最后
//正则默认匹配成功就会结束,不会继续匹配
g : 全部查找(全局匹配),写到正则最后
+ : 量词,匹配不确定位置,至少出现一次
{}: 量词,比如{4,7}最少出现4次,最多出现7次,
    如果是{4,}最少出现4次,{4}正好出现4次
? : 量词,表示0次或者1次用{}表示的话就是{0,1};
* : 量词,至少出现0次,用{}表示就是{0,};
| : 或的意思
(): 匹配子项,还有另外一个意思分组操作,整个正则就是一个整体,第个()就是子项
[] :字符类:一级相似的元素用表示 
^  :排除,如果^写在[]里面的话,就代表排除的意思,
    如果放到正则最前面就代表起始的意思
$ :结束,如果放到正则最后位置,就代表结束的意思
a-z:范围还可以0-9
\1,\2:重复子项,如果是1就是重复第1个子项,如果是2就是第2个子项

例子1

        var str='2015-5-5';
        var re=/(\d+)(-)/g;
        str.replace(re,function($0,$1,$2){
            //$0==(\d+)(-)
            //$1==(\d+)
            //$2==(-)
            alert($0);
        })

例子2

        var str='abs';
        //var str='abcs';  //下面会返回false;
        var re=/a[bde]s/;  //[]有些像js里的!
        
        alert(re.test(str));//true;
        

例子3

        var str='abs';
        var re=/a[^bde]s/;//排除bde
        alert(re.test(str));//false;
        

例子4

        var str="one two";
        var re=/one\b/;
        alert(re.test(str));//true;

例子5

        //如果要alert个符号必须要在他前面加个\转义;

例子6

        var str='abca';
        var re=/(a)(b)(c)\1/;//\2 abcb  false
        alert(re.test(str));;//true

例子7

        匹配中文:[\u4e00-\u9fa5]
        行首行尾空格:^\s*|\s*$
        Email:^\w+@[a-z0-9]+(\.[a-z]+){1,3}$
        网址:[a-zA-z]+://[^\s]*
        QQ号:[1-9][0-9]{4,9}
        邮政编码:[1-9]\d{5}
        身份证:[1-9]\d{14}|[1-9]\d{17}|[1-9]\d{16}x

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

你在我安 2022-09-08 20:52:01

www.layui.com
有你想要的layDate
还有弹出层layer

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文