怎么用正则表示 4位及以上的数字
比如:01234 654321
例:259654321648(这种就能被找出来)
求大神解答
[0-9]+
4位以上的话是[0-9]{4,}
我要的是带顺序的
从一串电话号码中找出有连续数字的号码,比如 17723458675 1985432146 18812345678
1887653564
望大佬帮我看看
@听落叶的故事: 写循环匹配吧.正则弄不了
@吴瑞祥: 循环太麻烦了 我再去找找资料
@听落叶的故事: 说的好像正则简单一样..
只是单纯的判断四位及以上的数字,可以这样表示:/^\d{4,}$/
1.^$ 这个是表示严格模式
2.\d 这是正则里的预定义类,表示0~9的数字
3.{4,} 这里用到的是正则里面的量词,表示它前面的字符能出现4次及4次以上,注意4后面是英文逗号,然后后面就空着。(当然你也可以把4改成别的数字,这样它就表示其他次数了)
最简洁的测试方法,你可以在浏览器的控制台测试它,像这样:
console.log(/^\d{4,}$/.test("1234")); //返回true
console.log(/^\d{4,}$/.test("123")); //返回false
console.log(/^\d{4,}$/.test("12342313541")); //返回true
大佬 问题还是没解决啊
四个跟四个以上的数字是可以判断出来了 但是我要的是有顺序的那种,比如:1234 987654
这个没顺序的应该是false,怎么还是true,那不就是表示只要是四个及以上的数字都能成功??
求大佬帮忙解答一下
@听落叶的故事: 是有顺序的,而且是固定开头的四位及四位以上的数字验证?那这样更简单了
比如你说的1234 可以这样 :console.log(/^1234\d{0,}$/.test("123456"));
987654:console.log(/^987654\d{0,}$/.test("987654"));
你再试试
下面这种是无论是以1234或者987654打头的数字都行,其他不行
console.log(/^[19][28][37][46]5?4?\d{0,}$/.test("1234"));
[19]表示第一个数字必须是他俩中的任意一个,其他不行
5? 表示5能出现0次或者1次
@青枫明月dada: 我是要做验证电话号码的程序,要将特殊的好号码排除出去,AAA AABB ABAB 这种已经用正则排除了 但是顺序的排除不了
\d+
而且我是不确定数字的位置,我想排除的是:只要一串号码中出现4个或以上的连续数字就排除掉
可以是在中间 可以是在后面
麻烦大佬解惑
@青枫明月dada: 而且不能写死,因为号码不确定 有可能是 3456 87654
不一定是 1 开头 只要是连续的数字超过4个或以上 就排除掉