老师,/\d*/不是表示至少匹配0次或者更多么?为什么输出结果是[""]而不是["6930184"]
来源:3-15 编程练习
慕村梦花火
2020-07-10 12:57:02
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>正则表达式-重复</title>
</head>
<body>
<script type="text/javascript">
var str = '我家的电话是6930184,地址是北京西城区';
/*此处添加代码*/
var pattern = /\d*/;
document.write(pattern.exec(str))
</script>
</body>
</html>
1回答
同学你好,问题解答如下:
"/\d*/"是表示至少匹配0次或者更多,关键就在于匹配0次。字符串str的开头是汉字,它不是数字,所以它满足匹配0次数字,如下:

所以需要将“*”改成“+”,即至少匹配一次,就能正确匹配了。
如果我的回答帮到了你,欢迎采纳,祝学习愉快!
相似问题
回答 2
回答 1