第13次作业--邮箱的正则表达式
题目:定义判断电子邮箱的正则表达式,判断输入的字符串是否为电子邮箱地址。
Test类:两个对象
/** * 创建两个对象 —— E_mail类的对象E;Judge类的对象M */ package cn.deu.ccut.Thirteen; public class Test { public static void main(String[] args) { E_mail E=new E_mail(); Judge M=new Judge(); M.Judge(E.Sl(), E.Regex());//将E_mail类中的Sl方法返回值和Regex方法返回值,传递给Judge类的构造方法 } }
E_mail类:两个属性;两个方法。
/** * 创建一个E_mail类 * 包含两个属性 —— sl:用户输入的邮箱地址;regex:邮箱地址的正确格式 * 包含两个方法 —— Sl:接收键入的邮箱地址;Regex:制定邮箱地址的规则 */ package cn.deu.ccut.Thirteen; import java.util.Scanner; public class E_mail { String sl; String regex; public String Sl(){ Scanner der=new Scanner(System.in); System.out.println("输入你的邮箱地址"); sl=der.nextLine(); return sl; } public String Regex() { regex="[a-zA-Z0-9_]+@{1}[a-z]+[.]{1}[a-z]+"; return regex; } }
Judge类:一个构造方法
/** * 创建了一个E_mail类的子类Judge *一个 构造方法 —— Judge(String sl,String regex)判断输入的sl是否符合regex要求 */ package cn.deu.ccut.Thirteen; public class Judge extends E_mail{ public void Judge(String sl,String regex){ if(sl.matches(regex)) { System.out.println("输入合法"); }else { System.out.print("输入不合法,重新"); Judge(Sl(),Regex()); } } }
运行截图: