好久没提问题了,问个正则表达式,请指教:请输入您的爱好:
A、足球 B、乒乓球 C、篮球 D、羽毛球
如上,我要对用户输入的答案做有效性验证,现在我做到的是判断用户输入的是4位以内,A至D。正则如下:
/^[a-dA-D]{1,4}$/但如何判断重复?比如:AAD、ADDD、AABB...这些都应是非法
感谢回复。
A、足球 B、乒乓球 C、篮球 D、羽毛球
如上,我要对用户输入的答案做有效性验证,现在我做到的是判断用户输入的是4位以内,A至D。正则如下:
/^[a-dA-D]{1,4}$/但如何判断重复?比如:AAD、ADDD、AABB...这些都应是非法
感谢回复。
解决方案 »
- 请问怎么定时执行一段代码呢?
- iframe中session丢失的问题,跟别的不一样
- C#如何进行数据运算!
- 如何调用ie浏览器中的"用电子邮件发送此页面"的命令
- background:transparent url(i/pageBd-hasAppbar.gif) repeat-y scroll -3000px 0;求人讲解一下.
- 我是新手!请问怎么做一个OA系统?基本架构是什么?
- 新闻系统的文章显示问题
- 如何这种方式在DataGrid中插入记录
- 大家说是ASP难,还是ASP.NET难?
- vs2012使用正则表达式替换文本
- DetailsView中,如何将显示和编辑界面变成多列。
- 不学数据结构是否能用C#.ASP.NET编出高级的网页程序
-------------试下,JS里是支持反向引用的:)
--------------
请输入您的爱好(按兴趣大小从左至右排序):
A、足球 B、乒乓球 C、篮球 D、羽毛球
~~哈,正则过客最近都没坐SF了~~
/*
好久没提问题了,问个正则表达式,请指教: 请输入您的爱好:
A、足球 B、乒乓球 C、篮球 D、羽毛球
如上,我要对用户输入的答案做有效性验证,现在我做到的是判断用户输入的是4位以内,A至D。正则如下:
/^[a-dA-D]{1,4}$/ 但如何判断重复?比如:AAD、ADDD、AABB...这些都应是非法 */import java.util.regex.Matcher;
import java.util.regex.Pattern;public class Test{
public static void main(String[] args){
String str = "aa";
//经过测试对应各种情况都OK if(check(str)){
System.out.println("'" + str + "' is valid!");
}else{
System.out.println("'" + str + "' is not valid!");
} } private static boolean check(String str){
str = str.toLowerCase();
String regex = "([a-d])((?!\\1)([a-d])((?!\\2|\\1)([a-d])((?!\\1|\\2|\\3)([a-d]))?)?)?";
Pattern pattern = Pattern.compile(regex);
Matcher matcher = pattern.matcher(str);
return matcher.matches();
}
}