Регулярное выражение для поиска определенного шаблона / текста в журналах

Я сейчас пишу Python script для фильтрации некоторых log файл и я хочу фильтровать текст с помощью регулярных выражений / некоторая библиотека (preferred regex как я хочу избежать зависимости от виртуальной среды). Ниже приведен текст / предложение, которое я хочу найти:

Failed to find the annotation and the status of the test public void com.somename.qa.mobile.tests.somename.SomeTest.testSomeName(). The result is not deployed to Platform but we will proceed with further tests

Этот тип строк может присутствовать в журнале консоли примерно 20 раз. Я хочу найти каждый экземпляр этого и получить имя этого метода somename.SomeTest.testSomeName() для каждого экземпляра (в конце концов я соберу все имена и отправлю электронное письмо себе... но это будет позже)

Я пытался это до сих пор '\[([^\]]+)\] somename.SomeTest.testSomeName() ([^ ]+)' найти шаблон. Но я не очень хорош в регулярных выражениях и могу делать что-то лишнее / неправильное.

Editted:

Изменение / расширение текста / строки, для которой я хочу регулярное выражение, которое найдет: somename.SomeTest.testSomeName() для меня.

21:18:19 at org.apache.maven.surefire.testng.TestNGExecutor.run(TestNGExecutor.java:170) 21:18:19 at org.apache.maven.surefire.testng.TestNGXmlTestSuite.execute(TestNGXmlTestSuite.java:84) 21:18:19 at org.apache.maven.surefire.testng.TestNGProvider.invoke(TestNGProvider.java:92) 21:18:19 at org.apache.maven.surefire.booter.ForkedBooter.invokeProviderInSameClassLoader(ForkedBooter.java:200) 21:18:19 at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:153) 21:18:19 at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:103) 21:18:26 2016-05-12 21:18:25.238 [ERROR] (1): Failed to find the annotation and the status of the test public void com.somename.qa.mobile.tests.somename.SomeTest.testSomeName(). The result is not deployed to Platform but we will proceed with further tests 21:18:26 somename.client.test.utilities.Platform.PlatformApiException: Platform API returned HTTP 400("Field :case_id is not a valid test case.") 21:18:26 at somename.client.test.utilities.platform.PlatformApiClient.sendRequest(PlatformApiClient.java:197) 21:18:26 at

1 ответ

Решение

Можете ли вы попробовать использовать следующие RE,

\w*.\w*.\w*\(\)

Демо здесь

Другие вопросы по тегам