正则表达式对邮件地址进行校验以及从一个字符串中匹配出一个格式正确的邮件地址

调用String类里面的matches(regex)方法进行正则匹配
package 正则表达式;
/* 对邮件地址进行校验:
String mail = "abc123@sina.com";
String reg = "[a-zA-Z0-9_]+@[a-zA-Z0-9]+(\\.[a-zA-Z]+)+";较为精确的匹配。
reg = "\\w+@\\w+(\\.\\w+)+";//相对不太精确的匹配
*/

public class Test {

	public static void main(String[] args) {
		// Todo Auto-generated method stub

		String mail = "abc123@sina.com";
		String reg = "[a-zA-Z0-9_]+@[a-zA-Z0-9]+(\\.[a-zA-Z]+)+";//较为精确的匹配。
	        String reg2 = "\\w+@\\w+(\\.\\w+)+";//相对不太精确的匹配
		boolean flag=mail.matches(reg);//或者改为reg2
		 if(flag)
 			System.out.println("邮件格式正确");
		 else
			 System.out.println("邮件格式不正确");
		
	  }

}

一个字符串中匹配出一个格式正确的邮件地址:

package 正则表达式;

import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class Test {

	public static void main(String[] args) {
		
		String str = "abc+123@sina.c_呵呵om.++呵呵呵";
		String reg = "[a-zA-Z0-9_]+@[a-zA-Z0-9]+(\\.[a-zA-Z]+)+";//较为精确的匹配。
		String reg2 = "\\w+@\\w+(\\.\\w+)+";//相对不太精确的匹配
		Pattern p = Pattern.compile(reg2);//或者改为reg
		Matcher m = p.matcher(str);
		
		//public boolean find()
		//尝试查找与该模式匹配的输入序列的下一个子序列。 
		//此方法从匹配器区域的开头开始,如果该方法的前一次调用成功了并且从那时开始匹配器没有被重置,则从以前匹配操作没有匹配的第一个字符开始.
		while(m.find())
		{
			System.out.println(m.group());
		}
		
	}

}

相关文章

正则替换html代码中img标签的src值在开发富文本信息在移动端...
正则表达式
AWK是一种处理文本文件的语言,是一个强大的文件分析工具。它...
正则表达式是特殊的字符序列,利用事先定义好的特定字符以及...
Python界一名小学生,热心分享编程学习。
收集整理每周优质开发者内容,包括、、等方面。每周五定期发...