Ta bort tecken som matchar ett mönster

Java:
Ta bort tecken som matchar ett mönster

Hur man gör:

import java.util.regex.Pattern;

public class PatternMatcher {

    public static void main(String[] args) {
        String input = "H3j! D3t här är en t3xt med siffr0r.";
        String pattern = "\\d"; // \\d matchar alla siffror
        
        String result = deletePattern(input, pattern);
        System.out.println(result); // Skriver ut "Hj! Dt här är en txt med siffror."
    }

    private static String deletePattern(String text, String pattern) {
        return text.replaceAll(pattern, "");
    }
}

Djupdykning

Förr i tiden renoverades text manuellt eller med enklare strängmanipulationsmetoder. Idag använder vi reguljära uttryck (regex), som introducerades i språk som Perl och blev populär i andra språk. I Java hanterar vi dem med Pattern och Matcher klasserna.

Alternativ till regex inkluderar traditionell strängmanipulation (såsom att använda String metoder replace() eller substring()) eller externa bibliotek som Apache Commons Lang StringUtils.

Java implementerar regex med en kompileringssteg, vilket innebär att det underliggande mönstret kompileras till en intern representation som sedan används för att matcha text. Prestanda kan variera beroende på mönstrets komplexitet och strängens längd.

Se även