fork download
  1. import re
  2.  
  3. txt = "Sab11Mba11"
  4. p1 = "(S(a|b)(a|b))"
  5. p2 = "(M(a|b)(a|b))"
  6. px = p1 + '|' + p2
  7. print(re.findall(p1, txt)) # [('Sab', 'a', 'b')]
  8. print(re.findall(p2, txt)) # [('Mba', 'b', 'a')]
  9. print([tuple(filter(lambda m: m != '', x)) for x in re.findall(px, txt)]) # [('Sab', 'a', 'b'), ('Mba', 'b', 'a')]
Success #stdin #stdout 0.05s 9520KB
stdin
Standard input is empty
stdout
[('Sab', 'a', 'b')]
[('Mba', 'b', 'a')]
[('Sab', 'a', 'b'), ('Mba', 'b', 'a')]