我最近刚刚开始学习 Python,并且已经“深入”到了正则表达式。我的任务看起来相当简单。我只需要编写一个从字符串返回某些单词的正则表达式。规则如下:单词只能包含一组元音。换句话说,它是一个不完美但简单的正则表达式,旨在从文本中返回一个音节单词。
我相信我编写的正则表达式并不太遥远,但我只返回了字符串的一部分,而不是完整的单词。下面的例子:
>>> import re
>>> text = "A boy named Sue tried to kill a swamp monkey, but failed miserably. He then cried. Boo hoo."
>>> re.findall("[^aeiou][aeiou]{1,}[^aeiou]", text)
['boy', 'nam', 'Sue ', 'ried', 'to ', 'kil', ' a ', 'wam', 'mon', 'key', 'but', 'fail', 'mis', 'rab', 'He ', 'hen', 'ried', 'Boo ', 'hoo.']
如您所见,结果不正确。它只是分割字符串以适合我的正则表达式,而不是返回它来自的单词。此外,返回的一些字符串甚至不是来自符合我的标准的单词。
提前致谢!