正则表达式通常被用于判断语句中,用来检查某一个字符串是否满足某一格式。正则表达式是含有一些具有特殊意义字符的字符串。
几种常用的正则表达式元字符:
. 代表任意一个字符
\\d 代表0-9的如何一个数字
\\D 代表任何一个非数字字符
\\s 代表空白字符 如'\t'、'\n'
\\S 代表非空白字符
\\w 代表可用于标识符的字符
\\W 代表不可用于标识符的字符
\\p{Lower} 代表小写字母a-z
\\p{Upper} 代表大写字母A-Z
常用的限定修饰符:
? 代表0次或1次
* 代表0次或多次
+ 代表1次或多次
{n} 代表正好出现n次
{n,} 代表至少出现n次
{n,m} 代表出现n-m次
代码示例如下:
- /**
- * @author qx
- * @date 2023/06/10
- * @desc 正则表达式测试
- */
- public class RegexDemo {
- public static void main(String[] args) {
- // 定义匹配email地址的正则表达式
- String regex = "\\w+@\\w+(\\.\\w{2,3})*\\.\\w{2,3}";
- String str1 = "aaa@";
- String str2 = "aaaa";
- String str3 = "hello@qq.com";
- String str4 = "111@kfc.dfg.com";
-
- System.out.println(str1.matches(regex));
- System.out.println(str2.matches(regex));
- System.out.println(str3.matches(regex));
- System.out.println(str4.matches(regex));
- }
- }
执行结果:
- false
- false
- true
- true