from re import * def pig_latin(word): r = compile('(^[^aeiou]+)(.*)') m = r.match(word) if m: return m.group(2) + m.group(1) + "ay" return word + "zay" def pig_latin2(word): r = compile('(?P^[^aeiou]+)(?P.*)') m = r.match(word) if m: return m.group('second') + m.group('first') + "ay" return word + "zay" def pig_latin3(word): r = compile('(^[^aeiou]+)(.*)') m = r.match(word) if m: return r.sub('\g<2>\g<1>ay',word) return word + "zay" for word in split(" ", "this is a sentence containing yosemite"): print pig_latin2(word)