Pengkuantiti tamak ialah pengkuantiti lalai. Pengkuantiti tamak sepadan sebanyak mungkin dalam rentetan input (padanan terpanjang), dan jika tiada padanan, simpan aksara terakhir dan padan semula.
Pengkuantiti posesif adalah serupa dengan pengkuantiti tamak, cuma bezanya ia pada mulanya cuba memadankan seberapa banyak aksara yang mungkin, dan tidak berundur seperti pengkuantiti tamak jika tiada padanan.
Jika anda menambah "+" selepas pengkuantiti tamak, ia menjadi pengkuantiti milik. Berikut ialah senarai pengkuantiti posesif:
Pengkuantiti | penerangan |
---|---|
re*+ | sepadan dengan sifar atau lebih kejadian. |
re?+ | sepadan dengan sifar atau satu kejadian. |
re++ | Padankan satu atau lebih kejadian. |
re{n}+ | sepadan dengan tepat dan kejadian. |
re{n, m}+ | sepadan dengan sekurang-kurangnya n dan paling banyak m kejadian. |
Demo
import java.util.Scanner; import java.util.regex.Matcher; import java.util.regex.Pattern; public class Test { public static void main(String[] args) { Scanner sc = new Scanner(System.in); System.out.println("Enter input text: "); String input = sc.nextLine(); String regex = "[0-9]++"; //Creating a pattern object Pattern pattern = Pattern.compile(regex); //Matching the compiled pattern in the String Matcher matcher = pattern.matcher(input); while (matcher.find()) { System.out.print(matcher.group()); System.out.println(); } } }
Enter input text: 45678 45678
Atas ialah kandungan terperinci Ungkapan biasa Java dengan pengkuantiti. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!