一、限定符
^:匹配字符串的开始位置。
$:匹配字符串的结束位置。
():子表达式的开始和结束位置。
[]:中括号表达式的开始和结束位置。
{}:限定符表达式的开始和结束位置。
*:匹配前面的子表达式零次或多次。
+:匹配前面的子表达式一次或多次。
?:匹配前面的子表达式零次或一次。
.:匹配换行符外的任何字符。
\:标记特殊字符或原义字符。
|:匹配前者或后者。
二、语法
{n}:匹配前面的子表达式n次。
{n,}:匹配前面的子表达式至少n次。
{n,m}:匹配前面的子表达式至少n次、至多m次。
[A-Z]:匹配从A到Z的任何字符。
[0-9A-Z]:匹配从0到9、从A到Z的任何字符。
[ABC]:匹配ABC中的任意字符。
[^ABC]:匹配非ABC的任意字符。
^A:匹配字符串以A开头。
A$:匹配字符串以A结尾。
A|B:匹配字符A或B。
三、示例
import java.util.regex.Matcher; import java.util.regex.Pattern; class Solution { public static void main(String[] args) { String regex = "[A-Za-z]+@\\w+(.com)$"; String s = "ArseneYao@outlook.com"; Pattern p = Pattern.compile(regex); Matcher m = p.matcher(s); System.out.println(m.matches()); } }