JavaRush /Blog Java /Random-PL /Wyrażenia regularne: znajdź słowo/część słowa
eGarmin
Poziom 41

Wyrażenia regularne: znajdź słowo/część słowa

Opublikowano w grupie Random-PL
Jeśli chcesz znaleźć słowo lub podciąg, dobrym rozwiązaniem jest użycie operatora sterującego z zestawu narzędzi wyrażeń regularnych . Jest niezastąpiony, gdy trzeba znaleźć coś, co wynika z czegoś innego.
Prosty przykład
String str = "программируем"; Pattern p = Pattern.compile(".*программ(?=ируем).*"); Matcher m = p.matcher(str); if(m.matches()){ System.out.println("Нашел!"); }else{ System.out.println("Не нашел!"); }
1. Szukaj od przodu
W powyższym przykładzie, jeśli chcesz znaleźć „programowanie”, ale nie musisz szukać „programowania”, powinieneś zastosować następujący wzór: .*программ(?=ируем).* ?= – wyszukaj z przodu obecność słowa/części słowa; ?! – wyszukaj od przodu brak słowa/części słowa.
2. Szukaj od tyłu
Przeszukiwanie od tyłu działa w podobny sposób. Musisz użyć ?<=, aby wyszukać słowo/część słowa za nim i ? .*(?<=programy)we.* Słowo „program” pasuje do tego wzorca, ale słowo „polski” nie.
Komentarze
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION