我試圖用Python實現Pig Latin。 我想匹配其通過輔音或「曲」開頭的字符串(不管的情況下),所以找到的第一個字母,所以起初我是這樣做的:python findall,帶有「|」的正則表達式和分組
first_letters = re.findall(r"^[^aeiou]+|^[qQ][uU]", "qualification")
它沒有工作(只查找「q」),所以我想,我不得不添加q中的第一組:
first_letters = re.findall(r"^[^aeiouq]+|^[qQ][uU]", "qualification")
使作品(它找到「曲」,這不僅「q」)!
但玩弄我發現自己這個:
first_letters = re.findall(r"{^[^aeiou]+}|{^[qQ][uU]}", "qualification")
,沒有工作,因爲它是一樣的,第一個表達式我想我的想法。 但最後這也工作:
first_letters = re.findall(r"{^[^aeiou]+}|(^[qQ][uU])", "qualification")
我不知道爲什麼。有人可以告訴我爲什麼?
是的,我想通了,我可以扭轉規則,但我不明白爲什麼用大括號的工作,^內部做什麼?對不起,我找不到在Google上查找的正確詞語。 – 2012-03-14 15:57:31
更新了答案。 – beerbajay 2012-03-14 16:02:23
非常感謝! – 2012-03-14 16:18:12