การติดตามนิพจน์ทั่วไปที่ตรงกันที่ให้ id อีเมลรวมถึงการป้อนข้อมูลที่ว่างเปล่า -
^([a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,6})?$
ที่ไหน
-
^ ตรงกับจุดเริ่มต้นของประโยค
-
[a-zA-Z0-9._%+-] จับคู่อักขระหนึ่งตัวจากตัวอักษรภาษาอังกฤษ (ทั้งสองกรณี) ตัวเลข "+" "_" ".","" และ "-" ก่อนสัญลักษณ์ @ .
-
+ หมายถึงการซ้ำซ้อนของชุดอักขระที่กล่าวถึงข้างต้นอย่างน้อยหนึ่งครั้ง
-
@ ตรงกับตัวเอง
-
[a-zA-Z0-9.-] จับคู่อักขระหนึ่งตัวจากตัวอักษรภาษาอังกฤษ (ทั้งสองกรณี) หลัก "." และ "-" หลังเครื่องหมาย @
-
\.[a-zA-Z]{2,6} สองถึง 6 ตัวอักษรสำหรับโดเมนอีเมลหลัง "."
-
$ หมายถึงการสิ้นสุดประโยค
ตัวอย่างที่ 1
<ก่อน> นำเข้า java.util.Scanner; นำเข้า java.util.regex.Matcher; นำเข้า java.util.regex.Pattern; SampleTest คลาสสาธารณะ { โมฆะคงที่สาธารณะหลัก ( สตริง args [] ) { สตริง regex ="^ ([ a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,6})?$"; // กำลังอ่านข้อมูลจากผู้ใช้ Scanner sc =new Scanner (System.in); System.out.println("ป้อนชื่อของคุณ:"); ชื่อสตริง =sc.nextLine(); System.out.println("ป้อนอีเมลของคุณ:"); สตริง e_mail =sc.nextLine(); System.out.println("ป้อนอายุของคุณ:"); อายุ int =sc.nextInt(); //การสร้างตัวอย่างคลาส Pattern Pattern pattern =Pattern.compile(regex); //สร้างตัวอย่างคลาส Matcher Matcher matcher =pattern.matcher (e_mail); // ตรวจสอบว่ามีการจับคู่เกิดขึ้นหรือไม่ถ้า (matcher.find ()) { System.out.println ("ยอมรับค่าอีเมล"); } อื่น { System.out.println ("อีเมลไม่รับค่า"); } }}ผลลัพธ์1
ป้อนชื่อของคุณ:krishnaป้อนอีเมลของคุณ:ป้อนอายุของคุณ:20ค่าอีเมลที่ยอมรับ
ผลลัพธ์ 2
ป้อนชื่อของคุณ:Rajeevป้อนอีเมลของคุณ:[email protected]ป้อนอายุของคุณ:25ค่าอีเมลที่ยอมรับ
ตัวอย่างที่ 2
<ก่อน>นำเข้า java.util.Scanner; ตัวอย่างคลาสสาธารณะ { public static void main (String args[]) {//Reading String จากผู้ใช้ System.out.println ("ป้อนที่อยู่อีเมล:"); สแกนเนอร์ sc =สแกนเนอร์ใหม่ (System.in); สตริง e_mail =sc.nextLine(); //นิพจน์ปกติ String regex ="^([a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2 ,6})?$"; ผลลัพธ์บูลีน =e_mail.matches (regex); ถ้า (ผลลัพธ์) { System.out.println ("ถูกต้องตรงกัน"); } อื่น { System.out.println ("การจับคู่ไม่ถูกต้อง"); } }}ผลลัพธ์ 1
ป้อนที่อยู่อีเมล:[email protected] match
ผลลัพธ์ 2
ป้อนที่อยู่อีเมล:ถูกต้องตรงกัน