当前位置: 代码迷 >> J2SE >> 正则表达式怎么表示 或者 和 空格这两个意思
  详细解决方案

正则表达式怎么表示 或者 和 空格这两个意思

热度:640   发布时间:2016-04-23 20:44:57.0
正则表达式如何表示 或者 和 空格这两个意思?
String str="2014-05-05T14:07:00";
Pattern pattern = Pattern.compile("^[1-9][0-9][0-9][0-9]-[0-1][0-9]-[0-3][0-9]T[0-2][0-9]:[0-5][0-9]:[0-5][0-9]$");
Matcher matcher = pattern.matcher(str);
System.out.println(matcher.matches());

这是一段匹配时间的正则表达式,现在如果T前面有空格的话就会匹配失败。
我想写成T前面有空格的也能匹配上,(2014-05-05 T14:07:00)这样,意思就是写成T或者空格(也许会不止一个空格)
都行。麻烦有会的大神指点一下,多谢。
------解决方案--------------------
空格在正则里可以直接打个空格或者用\\s来表示空白字符


" *"或者"\\s*"都能表示任意个空格


贴一段我自己写的
"^([1-9]\\d{3})-(0[1-9]
------解决方案--------------------
1[0-2])-(0[1-9]
------解决方案--------------------
[12]\\d
------解决方案--------------------
3[01])(\\s*T)(0[1-9]
------解决方案--------------------
1\\d
------解决方案--------------------
2[0-4]):([0-5]\\d):([0-5]\\d)$"