fork download
  1. import re
  2.  
  3. s = """TEST IC ITMI12CR01 GRATH1CR01, ALTIR1AB02
  4. TEST-ICITMI12CR01 BE5253, BE2178 and BE40035 towards GRATH1CR01, ROTIM1CR01 and ALTIR1AB02 are down
  5. TEST-IC Multiple links are TRIST1AB01<><>ROTIM1CR01<>GRATH1CR01<>ITMI12CR01
  6. TEST IC ITMI12CR01 links to GRATH1CR01, ALTIR1AB02"""
  7.  
  8.  
  9. l = [match.group(1) if match.group(1) else match.group(2)
  10. for match in re.finditer(r'\b(?:([A-Z]{4})(?:[0-9][A-Z0-9]{5})|([A-Z]{5})(?:[0-9][A-Z0-9]{4}))\b', s)
  11. ]
  12. print(l)
  13.  
Success #stdin #stdout 0.02s 9544KB
stdin
Standard input is empty
stdout
['ITMI', 'GRATH', 'ALTIR', 'GRATH', 'ROTIM', 'ALTIR', 'TRIST', 'ROTIM', 'GRATH', 'ITMI', 'ITMI', 'GRATH', 'ALTIR']