正则表达式的简单应用
2017-03-12 20:53
429 查看
在如下的一小段代码中,使用了正则表达式规定输入格式和输入内容必须为数字
String regex = "\\d{4}-\\d{2}-\\d{2}";// 使用正则表达式规定输入格式
System.out.println("请使用xxxx-xx-xx的格式输入日期,请输入2010年元旦之后的日期.");
String data = scan.nextLine();
String myData[] = data.split("-");// 按照给定的字符拆分
while (!data.matches(regex)// 输入格式是否正确
|| !(date_correctness(Integer.parseInt(myData[1]),
Integer.parseInt(myData[2])))// 输入的月份是否超过了当前月的最大天数
|| ((leap_year_or_not(Integer.parseInt(myData[0]))
&& Integer.parseInt(myData[1]) == 2 && Integer
.parseInt(myData[2]) > 29))// 是否是闰年二月超过了29天
|| ((!leap_year_or_not(Integer.parseInt(myData[0]))
&& Integer.parseInt(myData[1]) == 2 && Integer
.parseInt(myData[2]) > 28))// 是否是平年二月超过了30天
|| Integer.parseInt(myData[0]) < 2010) {
System.out.println("输入格式错误!请重新输入!");
data = scan.nextLine();
myData = data.split("-");
}
\d表示匹配一个数字字符{4}表示匹配4次
若匹配,则matches方法返回真,否则返回假
String regex = "\\d{4}-\\d{2}-\\d{2}";// 使用正则表达式规定输入格式
System.out.println("请使用xxxx-xx-xx的格式输入日期,请输入2010年元旦之后的日期.");
String data = scan.nextLine();
String myData[] = data.split("-");// 按照给定的字符拆分
while (!data.matches(regex)// 输入格式是否正确
|| !(date_correctness(Integer.parseInt(myData[1]),
Integer.parseInt(myData[2])))// 输入的月份是否超过了当前月的最大天数
|| ((leap_year_or_not(Integer.parseInt(myData[0]))
&& Integer.parseInt(myData[1]) == 2 && Integer
.parseInt(myData[2]) > 29))// 是否是闰年二月超过了29天
|| ((!leap_year_or_not(Integer.parseInt(myData[0]))
&& Integer.parseInt(myData[1]) == 2 && Integer
.parseInt(myData[2]) > 28))// 是否是平年二月超过了30天
|| Integer.parseInt(myData[0]) < 2010) {
System.out.println("输入格式错误!请重新输入!");
data = scan.nextLine();
myData = data.split("-");
}
\d表示匹配一个数字字符{4}表示匹配4次
若匹配,则matches方法返回真,否则返回假
相关文章推荐
- 正则表达式简单应用3
- 正则表达式的简单应用
- 正则表达式的简单应用
- 正则表达式匹配中文的简单应用
- 简单不相交集-1(基本应用-亲戚关系)
- .net 泛型简单应用
- Java反射-简单应用
- 基于MINA构建简单高性能的NIO应用-一个简单的例子
- 简单的应用调用驱动
- MySQL命令简单应用
- 利用$.fn.extend自定义拓展插件(简单应用)
- Mysql Memory引擎的简单应用
- 一个简单的demo模拟登录过程页面跳转逻辑和双击退出应用
- VC++最简单的ODBC应用--登录框设计
- iframe与form的target简单应用
- 浅析sql server 公共表达式的简单应用
- spring-mvc加spring security 的简单应用
- libevent的简单应用【转载】
- MATLAB——scatter的简单应用
- .NET MSChart应用的一个简单例子