fork download
  1. import re
  2.  
  3. pattern = r"\b([1-9](?:\s*[0-9]){3})\s?([A-Z])(?i:\2*)\s*([A-Z])(?i:\3*)\b"
  4. strings = [
  5. "1 2 3 4 Alpha Bravo",
  6. "1234 Alpha Bravo",
  7. "1234A Bbbbbbbc",
  8. "1234Aaa Bbb",
  9. "1234Aa Bbb",
  10. "1234A BbbbbBbb"
  11. ]
  12.  
  13. for s in strings:
  14. print(re.findall(pattern, s))
Success #stdin #stdout 0.02s 9856KB
stdin
Standard input is empty
stdout
[]
[]
[]
[('1234', 'A', 'B')]
[('1234', 'A', 'B')]
[('1234', 'A', 'B')]