Java中的正则表达式
Java中的正则表达式
使用正则表达式的意义:
在项目开发中String是一个重要的程序类,String类除了可以实现数据的接收、各类数据类型的转型外,其本身也支持正则表达式(Regular Expression),利用正则表达式可以方便地实现数据的拆分、替换、验证等操作。
在正则表达式的处理中,最为重要的就是正则匹配标记的使用,所有的正则标记都在java.util.regex.Pattern类中定义。
下面列举一些常用的正则标记:
字符:匹配单个字符。
一组字符:任意匹配里面的一个单个字符。
边界匹配:在以后编写JavaScript的时候使用正则时要用到。
简写表达式:每一位出现的简写标志也只表示一位。
数量表示:之前的所有正则都是表示一位,如果想表示多位正则就需要数量表示。
逻辑表示:与、或、非。
上述的6组常用的正则表达式建议全都记下来,以后经常会用到。
下面用一个例子说明如何使用:
范例:验证E-mail格式,现在要求一个合格的Email地址的组成规则如下:
①E-mail的用户名可以由字母、数字、"_"(下划线)所组成(不应该使用"下划线"开头。)
②E-mail的域名可以由字母、数字、"_"、"-"所组成。
③域名的后缀必须是".cn"、".com"、".net"、".com.cn"、".gov"。
package demo1;
import java.util.regex.*;//引入支持正则表达式的库
public class demo1 {
public static void main(String[] args) throws Exception{
//定义一个字符串变量存储要判断的邮箱数据(博主邮箱)
String str = "1564481752@qq.com";
//按照要求定义一个正则表达式
String regex = "[a-zA-Z0-9]\\w+@\\w+\\.(cn|com|com.cn|net|gov)";
//使用String类中对正则支持的方法来验证数据是否符合正则表达式
//str.matches(regex) str为字符串型数据,.matches是与指定正则匹配的方法,
//regex是存储的正则表达式语句,
//该方法返回类型为boolean型,符合正则表达式则返回true,否则返回false
System.out.println(str.matches(regex));
}
}