Java:
Usuwanie znaków pasujących do wzorca
Jak to zrobić:
import java.util.regex.Pattern;
public class PatternDeletionDemo {
public static void main(String[] args) {
String text = "Jabłka, gruszki & 33 banany";
String pattern = "[^\\w\\s]+"; // Wzorzec do usunięcia wszystkiego oprócz liter, cyfr i białych znaków
String cleanedText = text.replaceAll(pattern, "");
System.out.println(cleanedText); // Wyświetla: Jabłka gruszki 33 banany
}
}
Deep Dive
Usuwanie znaków pasujących do wzorca sięga początków programowania, gdzie oszczędność pamięci była kluczowa. Język Java ułatwia to zadanie dzięki klasie Pattern
z pakietu java.util.regex
, która implementuje wyrażenia regularne. Alternatywy to inne języki jak Perl, znany z potężnego systemu wyrażeń regularnych. Dodatkowo, mamy metody jak String.replace()
dla prostych podmian bez wzorców. Pamiętajmy, że kompilacja wzorca może być kosztowna. W takim przypadku użycie Pattern.compile()
do wielokrotnego wykorzystania wzorca jest efektywniejsze.
Zobacz też
- Dokumentacja klasy
Pattern
w Java: https://docs.oracle.com/javase/10/docs/api/java/util/regex/Pattern.html - Poradnik Oracle o wyrażeniach regularnych: https://docs.oracle.com/javase/tutorial/essential/regex/
- Strona do testowania wyrażeń regularnych: https://regexr.com/