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,因此证明默认事件先执行