réponse courte:
j'ai décidé d'utiliser \s++
comme séparateur dans les expressions de recherche multi-ligne (avec des expressions régulières compatibles) et \Qfoo\E
pour échapper à des caractères spéciaux si nécessaire.
Réponse longue:
Comme soru
déjà répondu, pour une "séquence Unicode linebreak" une recherche d'expression régulière avec \R
peut être utilisé.
Un retour chariot pur est représenté par \r
. Les majuscules et les minuscules font la différence.
Je trouve cette question SO parce que je voulais rechercher une expression multi-ligne dans Eclipse, y compris les sauts de ligne et onglets:
@Override
@Transient
Afin d'inclure les espaces blancs dans mon expression de recherche régulière je (sur plate-forme Windows)
@Override\r\n\t*@Transient
Après des expressions aussi du travail:
S'il vous plaît noter que la deuxième expression correspond également @Override @Transient
sans saut de ligne, ce qui est bien pour moi.
Les expressions suivantes ne l'ont pas! travail pour moi:
@Override\r\t*@Transient
@Override\n\t*@Transient
Explication de certaines expressions régulières:
\R
représente
\s
toute séquence linebreak unicode (par exemple \r\n
) représente tout blanc s rythme
\t
représente un onglet
*
correspond à zéro occurrences ou plus
++
matches un ou plusieurs occurrences
\Q
et \E
contenu enveloppé d'échappement. Utilisez-les si votre expression multi-ligne originale comprend des caractères regex spéciaux, par exemple
\Q/**\E\s++\Q*\E
matchs
/**
*
Voir aussi:
Difference between \n and \r?
https://docs.oracle.com/javase/7/docs/api/java/util/regex/Pattern.html
+1 pour expliquer les étapes. – McGafter