【发布时间】:2015-08-16 15:11:17
【问题描述】:
我试图只打印与我提供的正则表达式匹配的单词,并且只包含第二个参数中提供的字母。正则表达式可以完美运行,但字母选择却不行。
import re
def search(regex,letters):
letters=set(letters)
pattern=re.compile(regex)
for word in content:
word=word.strip()
if(pattern.findall(word)):
if letters & set(word):
print(word)
#search(r'^(n|u|p|g|o|u|e|b|l){6}$')
#search(r'^t(i|a)[a-z]{3}')
content=["hello","helps","halts","random"]
search(r'^h(e|a)[a-z]{3}','hltsa') #returns: hello,helps,halts
我的目标是让它只返回暂停,因为它匹配第二个参数。
【问题讨论】:
-
if letters & set(word):应该检查什么? -
我发现在这个stackoverflow.com/questions/9443302/… post中我认为它会检查一个单词是否包含这些字母
-
尝试打印
set(word),然后尝试打印letters,最后打印letters & set(word),看看它会给你什么;)
标签: regex python-2.7