web-dev-qa-db-fra.com

Comment filtrer plusieurs mots dans Android Studio logcat

Je veux voir juste quelques mots dans logcat. En d'autres termes, juste une balise donnée. J'ai essayé d'activer Regex et de taper [Encoder|Decoder] comme filtre, mais cela ne fonctionne pas.

29
Pitel

Vous devez utiliser une construction de regroupement :

(Encoder|Decoder)

En fait, vous pouvez simplement utiliser

Encoder|Decoder

Si tu utilises [Encoder|Decoder], la classe de caractères est créée et correspond à tout caractère unique E, n, c... |, D... ou r.

Voir Classes de caractères ou jeux de caractères :

Avec une "classe de caractères", également appelée "jeu de caractères", vous pouvez dire au moteur d'expression régulière de ne faire correspondre qu'un seul caractère sur plusieurs. Placez simplement les caractères que vous souhaitez faire correspondre entre crochets. Si vous souhaitez faire correspondre un a ou un e, utilisez [ae].

Une autre lecture incontournable est certainement Alternance avec la barre verticale ou le symbole de tuyau :

Si vous souhaitez rechercher le texte littéral cat ou dog, séparez les deux options par une barre verticale ou un symbole de tuyau: cat|dog. Si vous voulez plus d'options, développez simplement la liste: cat|dog|mouse|fish.

Lors de l'utilisation de (...) vous dites au moteur regex de regrouper les séquences de caractères/sous-modèles (avec les capturer, les sous-correspondances sont stockées dans la mémoire tampon et vous peut y accéder via des références arrières, et avec la non capture (?:...) vous ne regroupez que les sous-modèles):

En plaçant une partie d'une expression régulière entre crochets ou parenthèses, vous pouvez regrouper cette partie de l'expression régulière . Cela vous permet d'appliquer un quantificateur à l'ensemble du groupe ou de restreindre alternance à une partie de l'expression régulière.

42
Wiktor Stribiżew