import re x = None def km_to_miles(match): miles = float(match.group(1)) /1.6 return "%f miles" % miles testString = """a distance of 17 kilometers""" finalString = re.sub('(\d+)\ kilometers',km_to_miles,testString) print finalString