fork download
  1. import re
  2.  
  3. uom_regex = 'box(?:es)?|bxs|bags?'
  4. regex = r'(?=({0}))\1([a-zA-Z]+)'.format(uom_regex)
  5.  
  6. test_strings = ["boxes", "bags", "boxesapple", "boxapple", "bagapple", 'bagsapple']
  7.  
  8. for test_string in test_strings:
  9. result = re.sub(regex, r'\1 \2', test_string)
  10. print(f"Original: {test_string}")
  11. print(f"Modified: {result}\n")
Success #stdin #stdout 0.03s 9792KB
stdin
Standard input is empty
stdout
Original: boxes
Modified: boxes

Original: bags
Modified: bags

Original: boxesapple
Modified: boxes apple

Original: boxapple
Modified: box apple

Original: bagapple
Modified: bag apple

Original: bagsapple
Modified: bags apple