Krótka odpowiedź:
postanowiłem wykorzystać \s++
jako separatora w wielu wyrażeń wyszukiwania linia (z wyrażeń regularnych włączone) i \Qfoo\E
ucieczki znaków specjalnych w razie potrzeby.
Długa odpowiedź:
Jak soru
już odpowiedział na dowolnej sekwencji „Unicode” lineBreak wyszukiwania wyrażenie regularne z \R
mogą być użyte.
Czysty powrót karetki reprezentowany jest przez \r
. Duże i małe litery mają znaczenie.
znalazłem ten SO pytanie ponieważ chciałem sprawdzić multi ekspresji linii w Eclipse, w tym podziały wiersza i zakładek:
@Override
@Transient
W celu umieszczenia spacji w moim wyrażenie regularne wyszukiwania użyłem (na platformie Windows)
@Override\r\n\t*@Transient
następujących wyrażeń również pracować:
Uwaga że drugie wyrażenie pasuje również @Override @Transient
bez przerwy linii, co jest dobre dla mnie.
Następujące wyrażeń nie! pracować dla mnie:
@Override\r\t*@Transient
@Override\n\t*@Transient
Wyjaśnienie niektórych wyrażeń regularnych:
\R
reprezentuje dowolny ciąg Unicode linebreak (np \r\n
)
\s
reprezentuje dowolny biały s Tempo
\t
oznacza JOT
*
zero lub więcej zdarzeń
++
pasuje do jednego albo większej liczby Zdarzeń
\Q
i \E
zawartość ucieczki owijania. Używaj ich, czy oryginalny wyraz wielu linia zawiera znaki specjalne regex, na przykład
\Q/**\E\s++\Q*\E
mecze
/**
*
zobacz także:
Difference between \n and \r?
https://docs.oracle.com/javase/7/docs/api/java/util/regex/Pattern.html
+1 za faktyczne wyjaśnienie kroków. – McGafter