- ^ 表示匹配字符串的開始位置 (例外 用在中括號中[ ] 時,可以理解為取反,表示不匹配括號中字符串)
- $ 表示匹配字符串的結束位置
- * 表示匹配 零次到多次
- + 表示匹配 一次到多次 (至少有一次)
- ? 表示匹配零次或一次
- . (圓點)表示匹配單個字符
- | 表示為或者,兩項中取一項(可用於兩個正則之間)
- ( ) 小括號表示匹配括號中全部字符
- [ ] 中括號表示匹配括號中一個字符 范圍描述 如[0-9 a-z A-Z]
- { } 大括號用於限定匹配次數 如 {n}表示匹配n個字符 {n,}表示至少匹配n個字符 {n,m}表示至少n,最多m
- \ 轉義字符 如上基本符號匹配都需要轉義字符 如 \*表示匹配*號
- \w 表示英文字母和數字 \W 非字母和數字
- \d 表示數字 \D 非數字
- \s表示空字符串
- 當使用-時,需要放在最后一個位置,否則會被當成數字和字母之間區間的標識
例如:如果時間你定義的為字符類型,但是又想校驗時間的格式,就可以用到此注解
1.校驗時間格式為:
- yyyy-MM-dd(時間精確到日):@Pattern中的regexp="^$|^(?:(?!0000)[0-9]{4}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1[0-9]|2[0-8])|(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[0-9]{2}(?:0[48]|[2468][048]|[13579][26])|(?:0[48]|[2468][048]|[13579][26])00)-02-29)$"
- yyyy-MM-dd HH:mm:ss(精確到秒):@Pattern中的regexp="^(?:(?!0000)[0-9]{4}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1[0-9]|2[0-8])|(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[0-9]{2}(?:0[48]|[2468][048]|[13579][26])|(?:0[48]|[2468][048]|[13579][26])00)-02-29)\s+([01][0-9]|2[0-3]):[0-5][0-9]:[0-5][0-9]$"