English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
java.regexLa classe modello del pacchetto è la rappresentazione compilata dell'espressione regolare.
Questo tipo dicompile()Il metodo accetta una stringa che rappresenta l'espressione regolare e restituisce un oggetto Pattern.
import java.util.Scanner; import java.util.regex.Matcher; import java.util.regex.Pattern; public class CompileExample { public static void main(String args[]) { //lettura del valore della stringa Scanner sc = new Scanner(System.in); System.out.println("Inserisci stringa di input"); String input = sc.nextLine(); //espressione regolare per trovare numeri String regex = "(\\d)"; //Compilazione espressione regolare Pattern pattern = Pattern.compile(regex); //stampa l'espressione regolare System.out.println("Espressione regolare compilata: " + pattern.toString()); //Oggetto ricerca matcher Matcher matcher = pattern.matcher(input); //verifica se è avvenuta una corrispondenza if(matcher.find()) { System.out.println("Data String contains digits"); } else { System.out.println("Data String does not contain digits"); } } }
Risultato di output
Inserisci la stringa di input hello my id is 1120KKA Espressione regolare compilata: (\d) Data String contiene numeri
Un'altra variante di questo metodo accetta valori interi che rappresentano i flag, ognuno dei quali specifica una condizione opzionale, ad esempio CASE_INSENSITIVE per ignorare le maiuscole e minuscole durante la compilazione dell'espressione regolare.
import java.util.Scanner; import java.util.regex.Matcher; import java.util.regex.Pattern; public class CompileExample { public static void main(String args[]) { //Compilazione espressione regolare Pattern pattern = Pattern.compile("[t]", Pattern.CASE_INSENSITIVE); //Oggetto ricerca matcher Matcher matcher = pattern.matcher("w3codebox"); int count = 0; while(matcher.find()) { count++; } System.out.println("Numero di corrispondenze: " + count); } }
Risultato di output
Inserisci la stringa di input w3codebox Numero di corrispondenze: 3