我有以下数据集:
a_df = pd.DataFrame({'id':[1,2,3,4,5],'text':['This was fuuuuun','aaaawesome','Hiiigh altitude','Oops','See you']})
a_df
id text
0 1 This was fuuuuun
1 2 aaaawesome
2 3 Hiiigh altitude
3 4 Oops
4 5 See you
有些单词拼写错误。要应用的一个规则是,如果我看到三个或更多的元音或辅音,那么我可以以某种方式确定有一个拼写错误的单词,所以我用"。
"替换重复的单词。所以我试过了:
a_df['corrected_text'] = a_df['text'].str.replace(r'([a-zA-Z])\3+','')
但是没有变化。我的逻辑是试图捕捉重复的字母,但我一定是做错了什么。如有任何帮助,我将不胜感激。
可以使用
a_df['text'] = a_df['text'].str.replace(r'([a-zA-Z])1{2,}', r'1', regex=True)
细节:
([a-zA-Z])
- ID为1的捕获组1{2,}
-第1组值的两次或多次出现(因此,三个或更多字母与前一个模式一起)(1
是对第1组值的替代反向引用,确保在原始字符串字面量中使用它,否则您将不得不使用双反斜杠)。
让我们试着将每三个连续的元音替换为",如下所示
a_df['text'].str.replace('([aeiou]{3})','', regex=True)