问这个用正则表达式怎么写?

来源:百度知道 编辑:UC知道 时间:2024/06/06 02:53:12
问题:输入4位的整数,且各位必须不同,有相同的位数显示输入错误!
各位帮帮忙,怎么写这个正则表达式!

比如:1234 正确!
1111 错误!
1224 错误! (只要给个表达式就可以了!)谢谢!
能不能写下什么意思,或者写个简单的java来实现这样的问题!

(\d)(?!\1)(\d)(?!\1|\2])(\d)(?!\1|\2|\3])(\d)

你不是只要表达式马
java下
try {
Pattern regex = Pattern.compile("(\\d)(?!\\1)(\\d)(?!\\1|\\2\\])(\\d)(?!\\1|\\2|\\3\\])(\\d)", Pattern.DOTALL | Pattern.MULTILINE);
Matcher regexMatcher = regex.matcher(subjectString);

} catch (PatternSyntaxException ex) {
// Syntax error in the regular expression
}
复制下面保存到123.html里面运行
<script>
p="12345678"
var re=/^(\d)(?!\1)(\d)(?!\1|\2\])(\d)(?!\1|\2|\3\])(\d)$/mg;//如果要确认只是个四个字符就加前后的^$否则不要,上面同样
if(re.test(p)){
alert("ok");
}else{
alert("no");
}
</script>