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

นิพจน์ทั่วไป \D Metacharacter ใน Java


นิพจน์ย่อย/อักขระเมตา “\D ” ตรงกับตัวเลขที่ไม่ใช่ตัวเลข

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

นำเข้า java.util.regex.Matcher;import java.util.regex.Pattern; RegexExample คลาสสาธารณะ { โมฆะคงสาธารณะหลัก ( สตริง args [] ) { สตริง regex ="\\D"; อินพุตสตริง ="นี่คือข้อความตัวอย่าง 12 24 56 89 24"; รูปแบบ p =Pattern.compile (regex); Matcher m =p.matcher (อินพุต); จำนวน int =0; ในขณะที่ (m.find ()) { นับ ++; } System.out.println("จำนวนที่ตรงกัน:"+นับ); }}

ผลลัพธ์

จำนวนการแข่งขัน:24

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

<ก่อนหน้า> นำเข้า java.util.Scanner; นำเข้า java.util.regex.Matcher นำเข้า java.util.regex.Pattern; คลาสสาธารณะ RegexExample { โมฆะสาธารณะสาธารณะหลัก ( สตริง args [] ) { สตริง regex ="\\ D "; สแกนเนอร์ 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); System.out.println("จำนวนอักขระที่ไม่ใช่ตัวเลขในแต่ละสตริง:"); for(int i=0; i<5;i++) {// การสร้าง Matcher object Matcher m =p.matcher (input [i]); จำนวน int =0; ในขณะที่ (m.find ()) { นับ ++; } System.out.println("สตริง "+i+":"+นับ); } }}

ผลลัพธ์

ป้อน 5 input strings:sample 112 35 36 63test 243 663hellohello how are you *จำนวนอักขระที่ไม่ใช่ตัวเลขในแต่ละสตริง:String 0:7String 1:3String 2:6String 3:5String 4:19