Multiline RegEx: match last occurrence only

Viewed 1073

I have a string containing a Python stack trace like this (with some irrelevant text before and after):

Traceback (most recent call last):
  File "/workspace/r111.py", line 232, in test_assess
    exec(code)
  File "a111.py", line 17, in 
    def reset(self):
  File "/workspace/r111.py", line 123, in failed
    raise AssertionError(msg)
AssertionError: Dein Programm funktioniert nicht. Python sagt:
Traceback (most recent call last):
  File "a111.py", line 6, in 
  File "/workspace/r111.py", line 111, in runcaptured
    exec(c, variables)
  File "", line 1, in 
ZeroDivisionError: division by zero

Now I want to extract the line in which the error occurred (1 extracted from File "", line 1) using a multiline RegEx (in Ruby).

/File ".*", line ([0-9]+)/ works nicely, but matches all occurrences. I only want the last. Iterating over the matches in the target environment is not a valid solution, as I can't change the business logic there.

1 Answers
Related