/ / Android Logcat regex com tag de aplicativo e TAG personalizado - android, regex, logcat, android-logcat

Regex do Android Logcat com tag de aplicativo e TAG personalizado - android, regex, logcat, android-logcat

Estou procurando um regex que eu possa ver no filtro personalizado do Android Studio na janela do logcat. A janela tem esta aparência: janela de filtro

aqui está um exemplo de registro que preciso filtrar:

08-06 15:46:13.883  27841-12352/tv.me.sdkapptest D/me#BADTAG﹕ process
08-06 15:46:13.883  27841-12352/tv.me.sdkapptest D/me#BADTAG﹕ processUri
08-06 15:46:13.884  27841-12352/tv.me.sdkapptest D/me#BADTAG﹕ About to create doc from InputStream
08-06 15:46:13.886  27841-12352/tv.me.sdkapptest D/me#BADTAG﹕ Doc successfully created.
08-06 15:46:13.887  27841-12352/tv.me.sdkapptest D/me#BADTAG﹕ About to merge doc into main doc.
08-06 15:46:13.887  27841-12352/tv.me.sdkapptest D/me#XmlTools﹕ xmlDocumentToString
08-06 15:46:13.895  27841-12352/tv.me.sdkapptest D/me#BADTAG﹕ Merge successful.
08-06 15:46:13.895  27841-12352/tv.me.sdkapptest D/me#BADTAG﹕ Doc is a wrapper.
08-06 15:46:13.905  27841-12352/tv.me.sdkapptest D/me#BADTAG﹕ processUri
08-06 15:46:13.905  27841-12352/not.to.me D/me#BADTAG﹕ begin
08-06 15:46:13.905  27841-12352/tv.me.sdkapptest D/me#MainActivity : so

eu quero manter a linha com tv.me.sdkapptest aquele Não contém me#BADTAG ou me#XmlTools

Como resultado, apenas a última linha deve corresponder. Já estou usando este: ^((?!(#BADTAG)|(#XmlTools)).)+$ mas não remove not.to.me linhas.

Respostas:

1 para resposta № 1

Você pode usar o seguinte regex:

^(?!.*(?:me#BADTAG|me#XmlTools))

Vejo demonstração

O regex significa

  • ^ - Início de uma linha
  • (?!.*(?:me#BADTAG|me#XmlTools)) - um look-ahead negativo que falha na correspondência se a linha tiver me#BADTAG ou me#XmlTools nisso

Como você descobriu, para exibir apenas as entradas de log pertencentes a algum pacote, este nome de pacote deve ser adicionado ao Nome do pacote na caixa de diálogo Filtro Logcat.


0 para resposta № 2

Na verdade, a regex que postei na pergunta é a única. O fato é que eu estava interpretando mal o painel de filtro que contém a tag de log, a mensagem de log e o nome do pacote. No meu caso, o nome do pacote é tv.me.app e o regex deve remover em me#BADTAG ou me#XmlTools no log de tag.

Aqui está a configuração correta do filtro insira a descrição da imagem aqui