正则表达式(Regular Expression)是一种文本模式,包括普通字符(例如,a 到 z 之间的字母)和特殊字符(称为"元字符")
?通配符匹配文件名中的 0 个或 1 个字符
*通配符匹配文件名中的 0 个或 多个字符
+通配符匹配文件名中的1个或 多 个字符
[a-z] //匹配所有的小写字母
[A-Z] //匹配所有的大写字母
[a-zA-Z] //匹配所有的字母
[0-9] //匹配所有的数字
[0-9.-] //匹配所有的数字,句号和减号
^ 表示字符串的开头,但它还有另外一个含义。当在一组方括号里使用 ^ 时,它表示"非"或"排除"的意思,常常用来剔除某个字符
中括号表达式的典型用途是指定任何大写或小写字母或任何数字的匹配
句点 (.) 匹配字符串中的各种打印或非打印字符,只有一个字符例外。这个例外就是换行符 (\n)
例子1:
String reg = “[0-9]+(\.[0-9]+){3}”;
Pattern p = Pattern.compile(reg);
String s = “192.16.25.9”;
Matcher m = p.matcher(s);
if (m.matches()) {
System.out.println(“match”);
} else {
System.out.println(“not match”);
}
例子2:
^ [0-9] +abc$
^为匹配输入字符串的开始位置
[0-9]匹配单个数字,+匹配前面的一个或多个
$为匹配输入字符串的结束位置。
例子3:
String reg = “^once.+$”;
Pattern p = Pattern.compile(reg);
String s = “there once are not good”;
Matcher m = p.matcher(s);
if (m.matches()) {
System.out.println(“match”);
} else {
System.out.println(“not match”);
}
}
例子4:
String reg = " ^ [ ^0-9][0-9]$";
Pattern p = Pattern.compile(reg);
String s = “a1”;
Matcher m = p.matcher(s);
if (m.matches()) {
System.out.println(“match”);
} else {
System.out.println(“not match”);
}
例子5:
String reg = " ^ [-]?(0|([1-9][0-9]*))(\.[0-9]+)?$";
Pattern p = Pattern.compile(reg);
String s = “-1001.11”;
Matcher m = p.matcher(s);
if (m.matches()) {
System.out.println(“match”);
} else {
System.out.println(“not match”);
}