Eliminazione di caratteri che corrispondono a un pattern

Java:
Eliminazione di caratteri che corrispondono a un pattern

Come fare:

public class RimozioneCaratteri {
    public static void main(String[] args) {
        String fraseOriginale = "Ciao, M0nd0! Benvenut1 in Java.";
        String frasePulita = fraseOriginale.replaceAll("[0-9]", "");

        System.out.println("Frase originale: " + fraseOriginale);
        System.out.println("Frase dopo la rimozione dei numeri: " + frasePulita);
    }
}

Output:

Frase originale: Ciao, M0nd0! Benvenut1 in Java.
Frase dopo la rimozione dei numeri: Ciao, Mondo! Benvenuti in Java.

Approfondimento

Storicamente, le espressioni regolari derivano dalla teoria degli automi e sono state introdotte nei programmi di computer negli anni ‘50. Java le implementa tramite la classe Pattern e la classe Matcher. Un’alternativa al metodo replaceAll() è replaceFirst(), per sostituire solo la prima occorrenza. In termini di implementazione, replaceAll() compila l’espressione regolare in un pattern e crea un matcher per trovare le corrispondenze, che poi vengono sostituite nel testo originale. È importante notare che l’operazione di rimozione può essere costosa in termini di performance se applicata a stringhe molto grandi o a pattern complessi.

Vedere anche