Java正则表达式的使用

正则表达式通常被用于判断语句中,用来检查某一字符串是否满足某一格式。

为了检查输入的数据是否满足某种格式,从JDK1.4开始可以使用String类的matches()方法进行判断。语法如下所示:

boolean matches(String regex)

  • regex:指定的正则表达式
  • 返回值:返回boolean类型

该方法用于告知当前字符串是否匹配参数regex指定的正则表达式。返回值是boolean类型,如果当前字符串与正则表达式匹配,则该方法返回true,否则返回false

正则表达式是由一些含有特殊意义的字符组成的字符串,这些含有特殊意义的字符称为元字符,下表列出了正则表达式的部分元字符。

在使用正则表达式时,如果需要某一类型的元字符多次输出,逐个输入就相当麻烦,这时可以使用正则表达式的限定元字符来重复次数。下表列出了常用限定符及其含义。

在正则表达式中还可以用方括号把多个字符括起来,方括号中各种正则表达式代表不同的含义。下表列出了方括号中元字符及其含义。

注意:使用普通意义的点字符“.”,则必须使用转义字符“\”。

下面例子判断合法邮箱:

public class Judge {
    public static void main(String[] args) {
         // 定义要匹配E_mail地址的正则表达式
        String regex = "\\w+@\\w+(\\.\\w{2,3})*\\.\\w{2,3}";
        String str1 = "aaa@"; // 定义要进行验证的字符串
        String str2 = "aaaaa";
        String str3 = "[email protected]";
        if (str1.matches(regex)) { // 判断字符串变量是否与正则表达式匹配
            System.out.println(str1 + "是一个合法的E-mail地址格式");
        }
        if (str2.matches(regex)) {
            System.out.println(str2 + "是一个合法的E-mail地址格式");
        }
        if (str3.matches(regex)) {
            System.out.println(str3 + "是一个合法的E-mail地址格式");
        }
    }
}

正则表达式分析:
通常情况下E-mail 的格式为[email protected]。字符X表示任意的一个或多个字符,@为E-mail地址中的特有符号,符号@后还有一个或多个字符,之后是字符.com,也可能后面还有类似.cn的标记。总结E-mail地址的这些特点,因此可以书写正则表达式\w+@\\w+(\\.\\w {2,3})*\\.\\w{2,3}来匹配E-mail地址。字符集\\w匹配任意字符,符号+表示字符可以出现1次或多次,表达式(\\.\\w{2,3})*表示形如.com格式的字符串可以出现0次或多次。而最后的表达式\\.\\w{2,3}用于匹配E-mail地址中的结尾字符,如.com

你可能感兴趣的:(Java正则表达式的使用)