在python中提取和列出单词

时间:2014-01-10 20:33:57

标签: python regex project extract

我很难做这个项目 python脚本提取并列出满足以下条件的所有单词:
(1)两个辅音彼此相邻的词 (2)以元音开头和结尾的长度为5或更长的单词 (3)长度为7或以上的单词,以辅音开头,以元音结尾 (4)缩写2-3个以大写字母开头的单词。

任何关于如何编写代码,帮助甚至代码示例的指针都将非常感激。 需要你的帮助。

2 个答案:

答案 0 :(得分:3)

首先,如何在Python程序中包含正则表达式:

import re

if re.match(pattern, string_to_match):
    # there is a match
else:
    # there is no match

然后,你需要的第一个正则表达式。因为你还没有给出任何代码,这个问题就像家庭作业一样,我不会给你其他的。

 re.match(r"^[aeiou].{,3}[aeiou]$", string_to_match)

说明:

^$确保匹配是从字符串的开头到结尾。 [aeiou]检查作为元音的字符。 .{,3}检查最多3次重复的任何字符(由.表示)。

您可能会发现documentation有帮助。

答案 1 :(得分:0)

consonants = "bcdfghjklmnpqrstvwxyz"+"bcdfghjklmnpqrstvwxyz".upper()
vowels = "aeiouAEIOU"
如果

,一个单词有2个辅音
re.find("[%s]{2,}"%consonants,the_word_to_check)

如果len(the_word) > 5

,则单词长于5

如果re.match("^[{0}].*[{0}]$".format(vowels),the_word)

,单词以元音开头和结尾

我会把剩下的作为你的优秀......