[英]Java - Regex extract date from string
我需要從此字符串中提取日期:
BB 通知:購買您的票,最終卡號 xxxx,$ 00,00,在 04/10,在 11:28。 如果您不認識,請撥打 40032 2412。
還有完整的日期 04/10/2015
日期模式為 dd/MM 或 dd/MM/yyyy
編碼:
String mydata = "BB 通知:購買您的票,最終卡號 xxxx,$ 00,00,在 04/10,在 11:28。如果您不認識,請撥打 40032 2412。";
Pattern p = Pattern.compile("(0[1-9]|1[012])[- /.](0[1-9]|[12][0-9]|3[01])[- /.](19|20)\\d\\d");
Matcher m = p.matcher(mydata);
結果:m.matches() == false
你可以試試這個正則表達式:
Matcher m = Pattern.compile("(\\d{1,2}/\\d{1,2}/\\d{4}|\\d{1,2}/\\d{1,2})", Pattern.CASE_INSENSITIVE).matcher(string);
while (m.find()) {
System.out.println(m.group(1));
}
它尋找DD / MM模式或者尋找DD / MM / YYYY。
檢查此鏈接
Pattern pattern = Pattern.compile(regex, Pattern.MULTILINE);
Matcher matcher = pattern.matcher(string);
while (matcher.find()) {
System.out.println("Full match: " + matcher.group(0));
}
Pattern.MULTILINE 確保它正在搜索 DD/MM 或 DD/MM/YYYY(如果它存在於字符串中)的匹配項
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.