Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Java

วิธีจับคู่จุดสิ้นสุดของสตริง/บรรทัดเฉพาะโดยใช้ Java RegEx


อักขระเมตา “$” ตรงกับจุดสิ้นสุดของสตริงเฉพาะ กล่าวคือ ตรงกับอักขระตัวสุดท้ายของสตริง ตัวอย่างเช่น

  • นิพจน์ “\\d$ ” จับคู่สตริง/บรรทัดที่ลงท้ายด้วยตัวเลข

  • นิพจน์ “[a-z]$ ” จับคู่สตริง/บรรทัดที่ลงท้ายด้วยอักษรตัวพิมพ์เล็ก

ตัวอย่างที่ 1

<ก่อน> นำเข้า java.util.Scanner; นำเข้า java.util.regex.Matcher; นำเข้า java.util.regex.Pattern; ตัวอย่างคลาสสาธารณะ { โมฆะสาธารณะสาธารณะหลัก (สตริง args []) {// การอ่านสตริงจากระบบของผู้ใช้ .out.println("ป้อนสตริง"); สแกนเนอร์ sc =สแกนเนอร์ใหม่ (System.in); อินพุตสตริง =sc.nextLine(); สตริง regex =".*[^a-zA-Z0-9//s]$"; //การคอมไพล์นิพจน์ทั่วไป Pattern pattern =Pattern.compile(regex); //ดึงวัตถุที่จับคู่ Matcher matcher =pattern.matcher (อินพุต); if (matcher.matches ()) { System.out.println ("การจับคู่เกิดขึ้น"); } อื่น { System.out.println ("ไม่ตรงกัน"); } }}

ผลลัพธ์ 1

ป้อนสตริงนี่คือข้อความตัวอย่าง #Match เกิดขึ้น

ผลลัพธ์ 2

ป้อน Stringhello เป็นอย่างไรบ้าง youMatch ไม่เกิดขึ้น

ตัวอย่างที่ 2

<ก่อนหน้า> นำเข้า java.util.Scanner นำเข้า java.util.regex.Matcher นำเข้า java.util.regex.Pattern คลาสสาธารณะ RegexExample { สแตติกโมฆะหลัก (สตริง args [] ) { สตริง regex ="\\. $"; สแกนเนอร์ sc =สแกนเนอร์ใหม่ (System.in); System.out.println("ป้อน 5 สตริงอินพุต:"); อินพุตสตริง[] =สตริงใหม่[5]; สำหรับ (int i=0; i<5; i++) { input[i] =sc.nextLine(); } //การสร้าง Pattern object Pattern p =Pattern.compile(regex); for(int i=0; i<5;i++) {// การสร้าง Matcher object Matcher m =p.matcher (input [i]); if(m.find()) { System.out.println("String "+i+" ลงท้ายด้วย '.'"); } } }}

ผลลัพธ์

ป้อนสตริงอินพุต 5 รายการ:สวัสดี คุณเป็นอย่างไรบ้าง คุณอาศัยอยู่ที่ไหนชื่อของคุณคืออะไร ยินดีต้อนรับสู่ tutorialspointThe Biggest Online Tutorials Library.String 0 ลงท้ายด้วย '.'String 2 ลงท้ายด้วย '.'String 4 ลงท้ายด้วย '.'