正则表达式通常被用于判断语气中,用来检查某一字符串是否满足某一个格式。正则表达式是含有一些具有特殊意义字符的字符串,这些特殊的字符称为元字符,比如“\d”表示0-9中的任何一个数字,而元字符就是“\d”。
正则表达式中元字符及其意义如下表所示:
注意:在正则表达式中,.代表任意一个字符,若想使用.,则需要使用转义字符\。
在正则表达式中可以使用方括号括起若干个字符来表示一个元字符,该元字符可代表方括号里的任何一个字符,例如:[abc]4代表a4、b4、c4都是和正则表达式匹配的字符串。方括号元字符还可以为其他格式。如:
[^456]:表示4、5、6之外的任意一个字符
[a-z]:表示a-z中的任意一个字母
[a-zA-Z]:表示任意一个英文字母
[a-e[g-z]]:表示a-e,或者g-z中的任意一个字母
[a-o&&[def]]:表示字母d、e、f
[a-d&&[^bc]]:表示字母a、d
同时,在正则表达式中允许使用限定修饰符来限定元字符出现的次数,例如:A*代表A可在字符串中出现0次或多次。限定修饰符表格如下所示:
代码示例:
public class Judge{
public static void main(String[] args){
String regex = "\\w+@\\w+(\\.\\w{2,3})*\\.\\w{2,3}";
String str1 = aaa@;
String str2 = "aaaa";
String Str3 = "111@111ffyu.dfg.com";
if(str1.matches(regex)){
System.out.println("str1是一个合法的地址");
}
if(str2.matches(regex)){
System.out.println("str2是一个合法的地址");
}
if(str3.matches(regex)){
System.out.println("str3是一个合法的地址");
}
}
}
Output:
111@111ffyu.dfg.com是一个合法的地址