0
点赞
收藏
分享

微信扫一扫

前端学习日志-6-Js正则

一ke大白菜 2022-02-14 阅读 64

JS正则表达式

----------------------创建正则表达式对象

python定义正则表达式对象: eg =“ \d+ “

JS定义正则表达式对象: eg =/ \d+ /      - 选用“ / / ”

----------------------JS正则表达式

text - 判断字符串是否符合规定的正则

eg =/\d+/;                       #判断内容是否含有数字
eg.test('aasadad123aaaaadada')
>>ture

eg =/^\d+$/;                       #判断内容是否全为数字
eg.test('aasadad123aaaaadada')
>>false

#  开始符:^     终止符:$

exec - 获取匹配的数据

单个匹配:/\d+/
eg =/\d+/;                #内容含有数字
str ='abcdefg_123_higkf_123456_'
eg.exec(str)
>>["123"]            #结果为数组(JS称为数组),exec默认获取第一个匹配对象


全局匹配:/\d+/g
eg =/\d+/g;                #内容含有数字
str ='abcdefg_123_higkf_123456_'
eg.exec(str)
eg.exec(str)
>>["123"]            #结果为数组(JS称为数组),exec默认获取第一个匹配对象
>>["123456"]  
>>null 
>>["123"]  

#全局匹配会像迭代器一样在匹配对象中循环取值

        一级匹配,二级匹配

test ='javascript is mpre fun than java';
eg =/\bjava\w*\b/;        #匹配java开头并以空格做分隔的对象,一级匹配:只匹配内容对象
eg.exec(test)
>>["javascript", index: 0, input: "javascript is mpre fun than java", groups: undefined]
       
eg =/\bjava(\w*)\b/;     #匹配java开头并以空格做分隔的对象,二级匹配:在匹配内容的基础上再匹配
eg.exec(test)
>(2) ["javascript", "script", index: 0, input: "javascript is mpre fun than java", groups: undefined]
                #(1)"javascript"   (2)"javascript", "script"

-----------定义正则表达式规则

/..../ 定义正则表达式
/..../g 全局匹配
/..../i 不区分大小写
/..../m 多行匹配


test ='javascript is mpre fun than \njava';        #\n  换行
var eg =/^\bjava\(w*)/g;                       #匹配以Java开头任何结尾,二级、全局匹配       
eg.exec(test)
eg.exec(test)
>>["javascript", "script"]  
>>null                     #test虽然内容有换行,但是仍然是一个整体数组,因此仅有一个java开头

       
eg =/\bjava(\w*)\b/gm;     
var eg.exec(test)
var eg.exec(test)
>>["javascript", "script"]
>>["java", ""]                #每行匹配

#  m多行匹配,以每个换行的开头进行匹配

事件执行顺序--接上篇

自定义事件先执行:

        a标签

        submit

默认事件先执行:

        - Checkbox

<body>
    <input type="checkbox"/>

    <script src="jquery-3.6.0.js"></script>
    <script>
        $(':checkbox').click(function(){
            var v =$(this).prop('checked');
            console.log(v);
        })
    </script>
</body>
            #选中时,打印false,因此证明默认事件先执行

举报

相关推荐

0 条评论