English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Java中具有示例的Matcher replaceFirst()方法

Questojava.util.regex.MatcherLa classe rappresenta un motore che esegue vari operazioni di abbinamento. La classe non ha un costruttore, può essere utilizzatamatches()Il metodo della classe java.util.regex.Pattern crea/ottiene l'oggetto di questa classe.

Questa classe (Matcher)replaceFirst()Il metodo accetta un valore di stringa e sostituisce la prima sequenza di sottostringa corrispondente al valore di stringa fornito nel testo di input, e restituisce il risultato.

Esempio 1

import java.util.Scanner;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class ReplaceFirstExample {
   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 = "[#]";
      //Crea un oggetto Pattern
      Pattern pattern = Pattern.compile(regex);
      //Crea un oggetto Matcher
      Matcher matcher = pattern.matcher(input);
      int count =0;
      while(matcher.find()) {
         count++;
      }
      //Ricerca utilizzata
      System.out.println("Il carattere # è apparso
      //Sostituisci la prima occorrenza
      String result = matcher.replaceFirst("@");
      System.out.println("Testo dopo la sostituzione della prima occorrenza di # con @ \n"+result);
   }
}

Risultato di uscita

Inserisci il testo di input:
Inserisci il testo di input:
Hello# How # are# you # welcome to Tutorials#point
Il carattere # è apparso 5 volte nel testo fornito
Testo dopo la sostituzione della prima occorrenza di # con @
Hello@ How # are# you # welcome to Tutorials#point

Esempio 2

import java.util.Scanner;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class ReplaceFirstExample {
   public static void main(String args[]) {
      //Leggi una stringa dall'utente
      System.out.println("Inserisci una Stringa");
      Scanner sc = new Scanner(System.in);
      String input = sc.nextLine();
      String regex = "\\s+";
      //Compila l'espressione regolare
      Pattern pattern = Pattern.compile(regex);
      //Ottieni l'oggetto matcher
      Matcher matcher = pattern.matcher(input);
      //Sostituisci tutti gli spazi con un singolo spazio
      String result = matcher.replaceFirst("_");
      System.out.print("Testo dopo la sostituzione del primo spazio con '_': \n"+result);
   }
}

Risultato di uscita

Inserisci una Stringa
hello this is a sample text with irregular spaces
Testo dopo la sostituzione del primo spazio con '_':
hello_this is a sample text with irregular spaces