老师为什么/\[\S+?\]/可以匹配到呢?
来源:3-19 编程练习
hyperse
2019-06-01 22:11:11
我自己写的pattern变量,在笔记里看到p1变量的写法,试了一下也可行。
我的理解是先匹配到[]这个符号,然后里面只要是非空就可以对吗?问号表示非空的[]的第一个?
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>正则表达式</title>
</head>
<body>
<script type="text/javascript">
str="cctv have [cctv1]、[cctv2]、[cctv3]、[cctv4]……";
/*此处添加代码*/
var pattern = /\[cctv1\]/;
document.write(pattern.exec(str));
var p1 = /\[\S+?\]/;
document.write(p1.exec(str))
</script>
</body>
</html>
1回答
好帮手慕码
2019-06-02
同学你好!
同学的代码效果实现是可以的,/\[\S+?\]/也是可以的
[] 是定义匹配的字符范围, \S 匹配任何可见字符 ,+ 匹配前面的子表达式一次或多次(大于等于1次), ? 匹配前面的子表达式零次或一次
?这里表示的是阻止贪婪,只能匹配到[cctv1]
编程具有灵活性,因此达到效果的方式有很多,只要实现了就可以了~
如果帮助到了你 欢迎采纳 祝学习愉快~
相似问题