Python 3.8.2
the task at hand is simple: to match lowercase characters separated by a single underscore. So the pattern could be `r"[a-z]+_[a-z]+"`

now my issue is that I expected `re.findall()` to pair up all the following:

"ash\_tonic\_transit\_so\_kern\_err\_looo\_"

instead of paring all the words around each underscore ('ash\_tonic', 'tonic\_transit', 'transit\_so', ETC) I get three pairs: ['ash\_tonic', 'transit\_so', 'kern\_err']

Does python re omit part of the string once a match has been found instead of running the search again?

```
import re
def match_lower(s):
    patternRegex = re.compile(r'[a-z]+_[a-z]+')
    mo =  patternRegex.findall(s)
    return mo

print(match_lower('ash_tonic_transit_so_kern_err_looo_'))

```