([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)
}
}
}
}