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

วิธีจับคู่ตัวเลขด้วย Java Regular Expression (RegEx)

คุณสามารถจับคู่ตัวเลขในสตริงที่กำหนดได้โดยใช้เมตาอักขระ "\\d" หรือด้วยนิพจน์ต่อไปนี้:

[0-9]

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

import java.util.Scanner; 
import java.util.regex.Matcher; 
import java.util.regex.Pattern; 
public class Example { 
    public static void main(String args[]) { 
        // อ่านสตริงจากผู้ใช้ 
        System.out.println("Enter a String"); 
        Scanner sc = new Scanner(System.in); 
        String input = sc.nextLine(); 
        String regex = "\\d"; 
        // คอมไพล์นิพจน์ปกติ 
        Pattern pattern = Pattern.compile(regex); 
        // ดึงออบเจ็กต์ matcher 
        Matcher matcher = pattern.matcher(input); 
        int count = 0; 
        while(matcher.find()) { 
            count++; 
        } 
        System.out.println("Number of digits: " + count); 
    } 
}

ผลลัพธ์

Enter a String sample text 1234 6657 
Number of digits: 8

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

import java.util.Scanner; 
public class RegexExample { 
    public static void main( String args[] ) { 
        // นิพจน์ปกติยอมรับ 10 หลัก 
        String regex = "\\d{10}"; 
        System.out.println("Enter input value: "); 
        Scanner sc = new Scanner(System.in); 
        String input = sc.nextLine(); 
        boolean result = input.matches(regex); 
        if(result) { 
            System.out.println("10 digit number"); 
        } else { 
            System.out.println("wrong input"); 
        } 
    } 
}

ผลลัพธ์ที่ 1

Enter input value: 9848022558 
10 digit number

ผลลัพธ์ที่ 2

Enter input value: 5337 
wrong input