正規表示式:
●Regular Expression
●目的:利用預先定義的分隔符號
--分隔字串
--檢查資料是否符合特定的格式
--從大量資料中抽取特定格式的資訊
●請先import java.util.regex.*;
●. 表任一字元
●\\d 表0-9
●\\s 表任空白字元
●\\S 表所有非空白字元
●其餘細項可參照:
--http://java.sun.com/j2se/1.7.0/docs/api/java/util/regex/Pattern.html
//[A-Z]表A,B,C,.....Z
//[1-2]表只能是1或2
// \\d{8}表只能是數字,而且要是8碼
//$表之後要是資料結尾(E123456789'0')
//身分證檢測:
String id = "E123456789";
Pattern pattern = Pattern.compile("[A-Z][1-2]\\d{8}$");
Matcher matcher = pattern.matcher(id);
System.out.println(matcher.find());
Out:
true
//從大量資料中找電話號碼:
String id = "asdasd asdasd dasdsad 0912345678 asdasd,asdasd 0987654321";
Pattern pattern = Pattern.compile("09\\d{8}");
Matcher matcher = pattern.matcher(id);
while(matcher.find()){
System.out.println(matcher.group());
}
Out:
0912345678
0987654321
//從資料中找尋文字
String id = "It was the best of times";
Pattern pattern = Pattern.compile("w.s");
Matcher matcher = pattern.matcher(id);
while(matcher.find()){
System.out.println(matcher.group());
}
Out:
was
留言列表