老师为什么/\[\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]

编程具有灵活性,因此达到效果的方式有很多,只要实现了就可以了~

如果帮助到了你 欢迎采纳 祝学习愉快~

0

0 学习 · 14456 问题

查看课程