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

คลาสอักขระ Posix \p{Graph} Java regex


คลาสนี้จับคู่อักขระที่มองเห็นได้ทั้งหมด เช่น ตัวอักษร ตัวเลข เครื่องหมายวรรคตอน

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

<ก่อนหน้า> นำเข้า java.util.Scanner นำเข้า java.util.regex.Matcher นำเข้า java.util.regex.Pattern คลาส VisiblieCharacters สาธารณะ { โมฆะคงที่สาธารณะหลัก (สตริง args []) {// การอ่านสตริงจากระบบของผู้ใช้ .out.println("ป้อนสตริง"); สแกนเนอร์ sc =สแกนเนอร์ใหม่ (System.in); อินพุตสตริง =sc.nextLine(); //นิพจน์ปกติ String regex ="[\\p{Graph}]"; //การคอมไพล์นิพจน์ทั่วไป Pattern pattern =Pattern.compile(regex); //ดึงวัตถุที่จับคู่ Matcher matcher =pattern.matcher (อินพุต); จำนวน int =0; ในขณะที่ (matcher.find ()) { นับ ++; } System.out.println("จำนวนอักขระที่มองเห็นได้:"+จำนวน); }}

ผลลัพธ์ 1

ป้อน stringöäü çã Ã testNumber ของอักขระที่มองเห็นได้:4

ผลลัพธ์ 2

ป้อนสตริงยินดีต้อนรับสู่ tutorialspointจำนวนอักขระที่มองเห็นได้:23

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

<ก่อนหน้า> นำเข้า java.util.Scanner; นำเข้า java.util.regex.Matcher; นำเข้า java.util.regex.Pattern; ตัวอย่างคลาสสาธารณะ { โมฆะคงที่สาธารณะหลัก ( สตริง args [] ) {// นิพจน์ปกติเพื่อให้ตรงกับด้านล่าง ตัวอักษรตัวพิมพ์ String regex ="^\\p{Graph}+$"; //รับข้อมูลอินพุต Scanner sc =new Scanner(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]); ถ้า (m.matches ()) { System.out.println (m.group ()); } } }}

ผลลัพธ์

ป้อนสตริงอินพุต 5 รายการ:helloöäüçãÃöäüçãÃHello12341234welcomeStrings ที่มีอักขระที่มองเห็นได้เท่านั้น:Hello12341234welcome