当前位置:   article > 正文

java中判断字符串是数字或日期的正则表达式_java 使用正则表达式判断字符串只能为年月

java 使用正则表达式判断字符串只能为年月
  1. private boolean isNumber(String n) {
  2. // 判断字符串是否为数字:正负整数、正负小数
  3. Pattern p = Pattern.compile("^-?(\\d+|\\d+\\.\\d+)$");
  4. return p.matcher(n).find();
  5. }
  1. private boolean isDate(String n) {
  2. // 简单判断字符串是否为日期:年的位数小于等于四位就是了,月01到12,日01到31。暂不考虑特殊情况
  3. Pattern p = Pattern.compile("^\\d{1,4}-(0[1-9]|1[0-2])-([0-2][09]|3[0-1])$");
  4. return p.matcher(n).find();
  5. }

这里记录一个bug:new SimpleDateFormat("yyyy-MM-dd").parse("11111111-1111-1111-1111-111111111111") 会被成功解析

这里的"11111111-1111-1111-1111-111111111111"是同事仿照UUID格式自定义的一个值


两个正则是才写的,主要用于自己日后方便查找使用,粗略测试了一下。
如果有问题,望留言指正

本文内容由网友自发贡献,转载请注明出处:https://www.wpsshop.cn/article/detail/52160
推荐阅读
相关标签
  

闽ICP备14008679号