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

วิธีจับคู่ตัวเลขที่ไม่ใช่ตัวเลขโดยใช้ Java Regular Expression (RegEx)


คุณสามารถจับคู่อักขระที่ไม่ใช่ตัวเลขได้โดยใช้อักขระเมตา "\\D" .

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

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

ผลลัพธ์

ป้อนข้อความตัวอย่างสตริง 2425 36จำนวนอักขระที่ไม่ใช่ตัวเลข:13

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

import java.util.Scanner;public class RegexExample { public static void main( String args[] ) {// นิพจน์ปกติเพื่อยอมรับคำ 5 ตัวอักษร String regex ="\\D{10}"; System.out.println("ป้อนค่าที่ป้อน:"); สแกนเนอร์ sc =สแกนเนอร์ใหม่ (System.in); อินพุตสตริง =sc.nextLine(); ผลลัพธ์บูลีน =input.matches (regex); ถ้า (ผลลัพธ์) { System.out.println ("อินพุตตรงกัน"); } อื่น { System.out.println ("อินพุตผิด"); } }}

ผลลัพธ์ 1

ป้อนค่าอินพุต:sample abcinput ที่ตรงกัน

ผลลัพธ์ 2

ป้อนค่าอินพุต:sample1234 อินพุตผิด