美文网首页
RegExp对象笔记整理|正则基础

RegExp对象笔记整理|正则基础

作者: LeeBoot | 来源:发表于2017-06-07 16:41 被阅读0次

    CSS参考:在CSS中,标识符(包括元素名称、类和id选择器)可以只包含字符(a-zA-Z0-9)和ISO 10646字符U + 00 a0越高
    ,加上连字符(-)和下划线(_);他们不能从数字开始,两个连字符,或者连字符后跟一个数字。标识符也可以包含转义字符和
    任何ISO 10646字符数字代码(见下一条)。例如,标识符“黑与白?“可能是写成“B \易名\ ?”或“B \ 26 W \ 3 f”。
    特别注意:querySelector按css规范实现,即css标识符不能从数字开始,两个连字符,或者连字符后跟一个数字
    querySelector() 方法仅仅返回匹配指定选择器的第一个元素。如果你需要返回所有的元素,请使用 querySelectorAll() 方法替代。

    • js中的事件
            blur focus focusin focusout load resize
            scroll unload click dblclick mousedown mouseup 
            mousemove mouseover mouseout mouseenter mouseleave 
            change select submit keydown keypress keyup error contextmenu
    
                函数:
                seacher--查找位置;
                replace--替换;
                match()--匹配返回的值;
                substring--获取子字符串;
                charAt--获取某个字符串;
                风格:
                js风格--new RegExp("值","正则参数");
                Perl风格--/值/正则参数;
                
                转义字符 :
                .(点)--匹配除换行符外的任何字符(默认);
                \d==0-9;(0到9),/d==[0-9];
                \s--空白字符,包括tab、 、空格符;
                \w--英文、数字、下划线;[a-z0-9_]
                [\b]匹配一个退格符;
                \D--[^0-9];
                \W--[^a-z0-9_];
                \S--非空白的字符;
                \b匹配一个单词的边界;
                \B匹配一个单词的非边界;
                +  若干(多少都可以);
                | “或”的意思;
                () 是为了提取匹配的字符串。表达式中有几个()就有几个相应的匹配字符串;
                []--元字符,其实就是方括号。
                [abc]lwb--“或”的意思,[]中的abc只要任意存在一个则条件满足
                [0-9]--表示范围0-9;
                ^--[^a-z]--表示排除a-z,就是“非”的意思;
                范围和排除搭配使用:[^a-z0-9]--表示除了英文和数字以外的东西;
                
                
                量词:个数;
                {n}--正好出现n次;
                {n,m}--最少n次,最多m次;
                {n,}--最少n次,最多无限次;
                +--{1,};
                ?--{0,1}意思是可有可无;
                *--{0,}意思是可以没有,也可以有,并且有多少位都行;
    
                e.g.:
                (1:phoneNumber:
                /d{8}   
                if(phoneNumber==01234567){
                    因为电话号码是没有0开头的,所以/d{8},需要做修改
                    为:[1-9]/d{7};
                };
                
                (2:qq号:
                [1-9]/d{4-10};
                (3:固话:
                010-66666699-分机号或66666699;
                (0/d{2,3}-)?[1-9]/d{7}(-/d{1,5})?;
                
                (4:邮箱:chuyang@goodBoy.com/
                chuyang666@aa.com/3959665435@qq.com;
                一串英文、数字、下划线    @   一串英文、数字    .  一串英文
                var youxiang=/^\w+  @  [a-z0-9]+ \.  [a-z]+$/i;
                (5:标签匹配
                <p>[\s\S]{0,2}? See more[\s\S]*?<\/p>
                text  字符串一部分符合要求就会返回true,所以要加上下面的^$;
                ^--行首;
                $--行尾;
                
                
                模式修饰符:
                g--global  找到全部;
                i--ignore:忽略大小写;
                            u--表示按unicode(utf-8)匹配(主要针对多字节比如汉字;
                s--Singleline(单行模式):表示更改.的含义,使它与每一个字符匹配(包括换行 符\n)
    
    • 后续案例:
    /(([a-f0-9]{2}:)|([a-f0-9]{2}-)){5}[a-f0-9]{2}/gi  #mac地址
    "url".split('/').pop()  #匹配url中的最后一个/后面内容  
    

    另外提供官方图解易于理解你所写的regexp
    传送门

    regexperIP.jpg

    相关文章

      网友评论

          本文标题:RegExp对象笔记整理|正则基础

          本文链接:https://www.haomeiwen.com/subject/wehafxtx.html