首页 > 试题广场 >

当在手机中需要保存移动手机号码时,怎样才能知道输入的手机号就

[单选题]
当在手机中需要保存移动手机号码时,怎样才能知道输入的手机号就是11位的移动手机号(      )
  • var filt=/^1[0-9]{10}$/;
    if(!filt.test(str))
    {
      alert("手机号输入错误");
    }
  • var filt=^1[0-9]{10};
    if(!filt.test(str))
    {
      alert("手机号输入错误");
    }
  • var filt=/^[0-9]{10}/;
    if(!filt.test(str))
    {
      alert("手机号输入错误");
    }
  • var filt=/^1[0-9]/;
    if(!filt.test(str))
    {
    alert("手机号输入错误");
    }
测试之后A是没有问题的
测试代码如下可以自己测试一下
<body>
        <input type="textname="" id="">
</body>
<script>
    var input = document.querySelector("input")
    
    input.addEventListener("blur",function(){
            var str = input.value
            var filt=/^1[0-9]{10}$/
            if (!filt.test(str)) {
            alert("手机号输入错误");
            }
    })

</script>


发表于 2020-07-28 10:56:41 回复(0)
var filt = /^1([0-9]{10})+$/

测试添加圆括号更好一些
发表于 2019-06-19 08:56:52 回复(2)
手机号有10.11.12开头的???另外,移动手机号是个什么鬼???
编辑于 2020-12-14 23:25:56 回复(0)
var filt=/^1[0-9]{10}$/;
if(!filt.test(str))
{
alert("手机号输入错误");
}

发表于 2020-05-03 23:20:10 回复(0)
我觉得的应该选A。
答案C是错的吧,我把答案C粘到控制台都会报错

发表于 2019-07-26 11:01:04 回复(1)
var filt=/^1[0-9]{10}+$/;
  1. 匹配输入字符串的开始位置。在这里也就是要求1开始。
  2.  [0-9]{10}+ [0-9]匹配0~9之间的数字,{10}重复10次+匹配前面的子表达式一次或多次。
  3. $  匹配输入字符串的结尾位置。

发表于 2019-08-14 09:47:26 回复(4)
怎么感觉都错了 没加号吧
发表于 2019-08-07 17:58:36 回复(4)
var filt=/^1[0-9]{10}$/;
发表于 2019-08-29 17:55:30 回复(0)
/^1[0-9]{10}$/
1.   ^1 开头一个1
2.   [0-9] {10}   十个数,每个数都可以是 0~9 之间任意的数
3.   $ 结束标记
4.   不要忘记放在 / / 之间哦 
发表于 2021-04-22 16:17:56 回复(0)

太菜了,代码没缩进,而且没有一个正确答案。正确答案应该是:

/^1[0-9]{10}$/
发表于 2019-08-17 13:19:20 回复(4)
// 表示里面是正则
^1 表示用1开头
[0-9] 表示数字0 1 2 3 4 5 6 7 8 9的任意一个  {10} 表示前面的规则匹配十次 这俩在一块,就是说可以有10个0-9的数字  $ 表示结尾
全部加起来就是说:匹配“1开头,后跟10个0-9之间的数字然后结尾”的字符串
编辑于 2022-01-28 10:12:48 回复(0)
经过    https://c.runoob.com/front-end/854    正则表达式在线测试工具试了一下
var filt=/^1[0-9]{10}+$/;
测试13812341234没有得到匹配的值
var filt=/^1[0-9]{10}$/;
测试13888888888可以匹配到13888888888

编辑于 2021-08-23 08:30:35 回复(0)
我孤陋寡闻了  我以为电话号码可以不用1开头
发表于 2023-04-14 17:55:19 回复(0)
A, 用字面量 // 定义正则表达式, /^1[0-9]{10}$/  ,^代表以什么字符开始,这里是以1开始,以0~9之间的一个整数结尾, {10}代表0~9之间的数重复10次,得出后面的10位数,所以加上前面的1 ,就是11位数了.
B 未用字面量// 定义正则表达式,且缺少$结尾不能保证是11位数
C 缺少$结尾,不能保证是11位数
D缺少量词{10}和$结尾,那我输入10086(移动信号真的差,吐槽一下)也是可以的,但明显不是11位手机号
故A选项正确


发表于 2023-03-11 20:14:24 回复(0)
  1. 匹配输入字符串的开始位置。在这里也就是要求1开始。
  2.  [0-9]{10}+ [0-9]匹配0~9之间的数字,{10}重复10次+匹配前面的子表达式一次或多次。
  3. $  匹配输入字符串的结尾位置。
发表于 2022-05-05 10:19:06 回复(0)
这道题就是看哪个符合正确的正则写法就行
发表于 2022-04-18 20:26:34 回复(0)
var filt=/^1[0-9]{10}$/;
if(!filt.test(str))
{
alert("手机号输入错误");
}
这题出的,都不带看的吗,test 用的是 str ???
应该用的是 filt 才对。
否则就出现报错了。


发表于 2021-08-30 10:42:23 回复(0)
为什么要有两个/ /呢
发表于 2021-07-12 00:09:30 回复(0)
试了,C 也可以呀
发表于 2021-05-26 11:27:02 回复(0)
正则
发表于 2021-02-05 18:06:53 回复(0)