#include <MsgBoxConstants.au3> ; to declare the Constants of MsgBox
Local $sRegex = "(?m)^.*?::(.*?(pass|fail).*)"
Local $sString = "" & @CRLF & _
"tests/test_pytest_fold.py::test_1_passes_and_has_logging_output" & @CRLF & _
"" & @CRLF & _
"------------------------------------------------------------------ live log setup ------------------------------------------------------------------" & @CRLF & _
"" & @CRLF & _
"INFO root:test_pytest_fold.py:52 Running test tests.test_pytest_fold..." & @CRLF & _
"" & @CRLF & _
"INFO root:test_pytest_fold.py:53 Setting test up..." & @CRLF & _
"" & @CRLF & _
"INFO root:test_pytest_fold.py:54 Executing test..." & @CRLF & _
"" & @CRLF & _
"INFO root:test_pytest_fold.py:56 Tearing test down..." & @CRLF & _
"" & @CRLF & _
"------------------------------------------------------------------ live log call -------------------------------------------------------------------" & @CRLF & _
"" & @CRLF & _
"CRITICAL root:test_pytest_fold.py:63 Live military happy. View water one land until interesting leader." & @CRLF & _
"" & @CRLF & _
"ERROR root:test_pytest_fold.py:64 Kid expert show cost. Point daughter team attorney keep improve serve." & @CRLF & _
"" & @CRLF & _
"WARNING root:test_pytest_fold.py:65 Arm paper write guess close modern." & @CRLF & _
"" & @CRLF & _
"INFO root:test_pytest_fold.py:66 Recently each rich." & @CRLF & _
"" & @CRLF & _
"DEBUG root:test_pytest_fold.py:67 Attack also do far pressure address hot." & @CRLF & _
"" & @CRLF & _
"PASSED [ 31%]" & @CRLF & _
"" & @CRLF & _
"tests/test_pytest_fold.py::test_2_fails_and_has_logging_output" & @CRLF & _
"" & @CRLF & _
"------------------------------------------------------------------ live log setup ------------------------------------------------------------------" & @CRLF & _
"" & @CRLF & _
"INFO root:test_pytest_fold.py:52 Running test tests.test_pytest_fold..." & @CRLF & _
"" & @CRLF & _
"INFO root:test_pytest_fold.py:53 Setting test up..." & @CRLF & _
"" & @CRLF & _
"INFO root:test_pytest_fold.py:54 Executing test..." & @CRLF & _
"" & @CRLF & _
"INFO root:test_pytest_fold.py:56 Tearing test down..." & @CRLF & _
"" & @CRLF & _
"------------------------------------------------------------------ live log call -------------------------------------------------------------------" & @CRLF & _
"" & @CRLF & _
"CRITICAL root:test_pytest_fold.py:72 Paper such fund find international occur good deal." & @CRLF & _
"" & @CRLF & _
"ERROR root:test_pytest_fold.py:73 Today type which situation people nation develop." & @CRLF & _
"" & @CRLF & _
"WARNING root:test_pytest_fold.py:74 Rich key set point answer. Sing Republican continue bar however hundred." & @CRLF & _
"" & @CRLF & _
"INFO root:test_pytest_fold.py:75 Work level century myself piece. Share news no husband cold. Half up send board than current." & @CRLF & _
"" & @CRLF & _
"DEBUG root:test_pytest_fold.py:76 Require matter impact speech left to." & @CRLF & _
"" & @CRLF & _
"FAILED [ 34%]" & @CRLF & _
"" & @CRLF & _
"This is giving me a lot of trouble. I've been digging into the more advanced aspects of regex (lookarounds, and more esoteric matching symbols like \v), but so far my teammates and I haven't come up with anything workable." & @CRLF & _
"" & @CRLF & _
"Anyone care to take a stab at it? For the above second code example, I want to match so that I get the following (testname and its outcome):" & @CRLF & _
"" & @CRLF & _
"test_1_passes_and_has_logging_output PASSED" & @CRLF & _
"test_2_fails_and_has_logging_output FAILED"
Local $sSubst = "\1 \U\2ED"
Local $sResult = StringRegExpReplace($sString, $sRegex, $sSubst)
MsgBox($MB_SYSTEMMODAL, "Result", $sResult)
Please keep in mind that these code samples are automatically generated and are not guaranteed to work. If you find any syntax errors, feel free to submit a bug report. For a full regex reference for AutoIt, please visit: https://www.autoitscript.com/autoit3/docs/functions/StringRegExp.htm