English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
La classe java.util.regex.Matcher rappresenta l'engine per eseguire vari operazioni di corrispondenza. Questa classe non ha costruttore, può essere utilizzatamatches()
Il metodo della classe java.util.regex.Pattern per creare/ottenere l'oggetto di questa classe.
Classe Matcherend()Il metodo restituisce l'offset successivo alla ultima corrispondenza rappresentata dall'oggetto corrente.
L'espressione regolare “ [...]” corrisponde ai caratteri specificati tra le parentesi graffe dell'input stringa, nell'esempio seguente, utilizzare questa espressione per corrispondere ai caratteritqui,
Abbiamo già utilizzato ilcompile()
Il metodo ha compilato l'espressione regolare.
Ottieni l'oggetto Matcher.
matcher()
Chiamare questo metodo su ogni elemento corrispondente.
import java.util.Scanner; import java.util.regex.Matcher; import java.util.regex.Pattern; public class EndExample { public static void main(String[] args) { Scanner sc = new Scanner(System.in); System.out.println("Inserisci il testo di input: "); String input = sc.nextLine(); String regex = "[t]"; //Crea un oggetto modello Pattern pattern = Pattern.compile(regex); //Abbatte il modello compilato nella stringa Matcher matcher = pattern.matcher(input); int count = 0; while (matcher.find()) { int end = matcher.end(); System.out.println(end); } } }
Risultato di output
Inserisci il testo di input: Ciao, come stai? Benvenuto su w3codebox 27 32 43
Poiché il carattere 't' appare tre volte nella stringa di input, puoi osservare tre valori di offset (che rappresentano la posizione nella stringa di input dopo ogni apparizione).