java 匹配时间的正则怎样写?

Python08

java 匹配时间的正则怎样写?,第1张

4位时间如 00:00

([0-1]\d|2[0-3]):[0-5]\d

单一字符串 加^和$

如果是这样的时间也匹配 0:30, 8:9用下面这个

\b([0-1]?\d|2[0-3]):([0-5]?\d)\b

单一字符串用这个

^([0-1]?\d|2[0-3]):([0-5]?\d)$

提取以后还要处理一下

看一下下边的例子。结果

2012-2-14

2015-13-35 (这样非法的就需要你自己来处理了。)

--------------------------------------------------------------------------------

import java.util.regex.Matcher

import java.util.regex.Pattern

public class Other {

public static void main(String[] args) {

String str = "本页面最后修订于2012年2月14日 (星期二) 2015-13/35日 11:29。2012-135/14<br /></li>"

Pattern p = Pattern

.compile("[0-9]{4}[年|\\-|/][0-9]{1,2}[月|\\-|/][0-9]{1,2}")

Matcher m = p.matcher(str)

while (m.find()) {

if (!"".equals(m.group())) {

String date = m.group()

date = date.replaceAll("年", "-")

date = date.replaceAll("月", "-")

date = date.replaceAll("/", "-")

System.out.println(date)

}

}

}

}