import re
# Regular Expression pattern 'ub' matches the string at "Subject" and "Uber". As the CASE has been ignored, using Flag, 'ub' should match twice with the string Upon matching, 'ub' is replaced by '~*' in "Subject", and in "Uber", 'Ub' is replaced.
print(re.sub('ub', '~*', 'Subject has Uber booked already',
flags=re.IGNORECASE))
# Consider the Case Sensitivity, 'Ub' in "Uber", will not be replaced.
print(re.sub('ub', '~*', 'Subject has Uber booked already'))
# As count has been given value 1, the maximum times replacement occurs is 1
print(re.sub('ub', '~*', 'Subject has Uber booked already',
count=1, flags=re.IGNORECASE))
# 'r' before the pattern denotes RE, s is for start and end of a String.
print(re.sub(r'sANDs', ' & ', 'Baked Beans And Spam',
flags=re.IGNORECASE))