怎么样用正则表达式验证 不能有重复数字 并且只能从1-9升序

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了怎么样用正则表达式验证 不能有重复数字 并且只能从1-9升序相关的知识,希望对你有一定的参考价值。

String code="11|1|1|02|1|05|09";
//检查重复
String code_t0 = code.replace("\\s","");
if(Pattern.matches("(\\d2)1,10",code_t0))
throw new RuntimeException("有重复");
else
System.out.println("验证通过!");

不能有重复数字: Java正则可以做到;但只能是升序需要 Perl 正则;Java需要用其它的方式解决,Java正则做不到的追问

那怎么验证不能重复呢 先把这个解决了 代码求解

追答

/ (\d) \\| (?!.*\1) \d /x

追问

这样还是不行啊 大哥 麻烦QQ可以交流吗?

参考技术A 建议你把|去除,然后用以下正则识别
^0?1?2?3?4?5?6?7?8?9?$

测试代码(php
preg_match('/^0?1?2?3?4?5?6?7?8?9?$/s', '058', $match);
var_dump($match);
参考技术B 1?2?3?4?5?6?7?8?9?类似这种不可以吗?追问

不可以 必须用| 分割 而且不能像这样11|1|1|22|1|05|09重复 并且只能从1-9升序 求代码分析

追答

怎么会不可以,你修改修改嘛

js控制只能输入数字和逗号的正则表达式怎么写?

需要准备的材料分别有:电脑、html编辑器、浏览器。

1、首先,打开html编辑器,新建html文件,例如:index.html。

2、在index.html中的<script>标签,输入js代码:。

var reg = /^[0-9,]*$/;

var a = '1231,456,346,', b = '34sda';

test(a);test(b);

function test(text)

if (reg.test(text))

$('body').append(text + '符合</br>');

else

$('body').append(text + '不符合</br>');

3、浏览器运行index.html页面,此时会打印出该正则表达式对“1231,456,346,”和“34sda
”的校验结果。

参考技术A 楼主您好,正则式如下:
变量=/^[\d\,]\d*\,*$/
参考技术B var reg = /^[0-9,]+$/;
var txt = $("#id").html();
alert(reg.text(txt));本回答被提问者和网友采纳

以上是关于怎么样用正则表达式验证 不能有重复数字 并且只能从1-9升序的主要内容,如果未能解决你的问题,请参考以下文章

正则表达式怎么来验证输入框中只能输入整数而且不能以0开头;就是不能输入001这样的数字;

input里怎么用正则表达式判断只能输入0-1的数字

用js的正则表达式检测电话号码,要求,必须是1开头,只能是数字,并且是11位数字,这儿正则表达式怎么写

在C#中怎么用正则表达式限制文本框内不能输入数字?

正则表达式"结果要是数字并且非0"怎么表示.

求 js 正则表示式 只能输入英文字母和数字