Python正则表达式 - 查找具有不同字长的字符匹配

时间:2015-03-21 21:26:36

标签: python regex

我一直在学习Python中的正则表达式,并知道要查找只包含字符[a,e,f,g,h,i,n]的所有单词,我可以使用以下内容:

t = [w for w in words if re.search('^[aefghin]$', w)]

要查找只有7个字母的单词,我可以使用这些字符:

t = [w for w in words if re.search('^[aefghin]{7}$', w)]

但是,如何使用正则表达式搜索包含最多 7长度的所有单词?

2 个答案:

答案 0 :(得分:0)

为此,您可以使用'^[aefghin]{,7}$'。或{1,7}如果要排除空字符串。

语法为{minimum_number, maximum_number},但如果省略minimum_number,则表示"小于或等于maximum_number(包括0)"如果省略maximum_number,则表示"大于或等于minimum_number"。

答案 1 :(得分:-1)

您可以使用以下模式匹配[aefghin]个字母长度为1到7的任意组合(了解有关Limiting Repetition的更多信息):

[aefghin]{1,7}

Regular expression visualization

Debuggex Demo