参考文章:菜鸟
正则表达式 定义正则表达式定义了字符串的模式
可以用来搜索、编辑或处理文本
并不限于某一种语言,但是每种语言中有细微的差别
常用
| 分类 | 解释 | 示例 | 示例解释 | 备注 |
|---|---|---|---|---|
| 普通字符串 | 匹配相等的字符串 | hello world | 匹配“hello world” | 全部匹配 |
| . (点号) | 匹配任意一个字符;只能是一个字符 | . | “a”,“1” … | 只能是一个字符串 |
| s+ | 匹配一个或多个空格 | s+ | “ ”,“ ” | 注意转义 |
| ^ | 规定以何种字符串开始 | ^123 | 只使用"^"时,表示全匹配。 | |
| d | 匹配一个数字 | d | 匹配一个数字 | 范围[0~9] |
| d+ | 匹配一个或多个数字 | d+ | 匹配一位或多位数字 | |
| ? | 设置括号内选项可选 | ^d+(.d+)? | 以整数开始,可以跟小数如 123,1.567 | 括号中的内容规定了整数后面可以加的类型,如本例中,’123java‘为非法内容 |
| . | 匹配“.”(点号) | ^d+(.d+)? | 以整数开始,可以跟小数 |
public class RegexDemo {
public static void main(String[] args) {
example01(".*com.*","I am the one from com.org."); // true
example01(".","a"); // true
example01(".","4"); // true
example01("\s+",""); // false
example01("\s+"," "); // true
example01("\s+"," "); // true
example01("^123","123"); // true
example01("^123","1234"); // false
example01("\d","1"); // true
example01("\d+","1132"); // false
example01("^\d+(\.\d+)?","123"); // true
example01("^\d+(\.\d+)?","123.2556"); // true
}
public static void example01(String pattern,String content) {
// 是否匹配
boolean isMatch = Pattern.matches(pattern,content);
System.out.println("pattern: "+pattern);
System.out.println("content: "+content);
System.out.println("result: "+isMatch);
System.out.println("========分割线========");
}
}
结果:
pattern: .*com.* content: I am the one from com.org. result: true ========分割线======== pattern: . content: a result: true ========分割线======== pattern: . content: 4 result: true ========分割线======== pattern: s+ content: result: false ========分割线======== pattern: s+ content: result: true ========分割线======== pattern: s+ content: result: true ========分割线======== pattern: ^123 content: 123 result: true ========分割线======== pattern: ^123 content: 1234 result: false ========分割线======== pattern: d content: 1 result: true ========分割线======== pattern: d+ content: 1132 result: true ========分割线======== pattern: ^d+(.d+)? content: 123 result: true ========分割线======== pattern: ^d+(.d+)? content: 123java result: false ========分割线======== pattern: ^d+(.d+)? content: 123.2556 result: true ========分割线========



