【发布时间】:2016-04-01 01:39:16
【问题描述】:
所以我一直在为自己研究这个项目来理解正则表达式有6行输入。第一行将包含 10 个字符串。最后 5 行将包含一个有效的正则表达式字符串。 对于输出,每个正则表达式根据第 1 行打印与字符串匹配的所有字符串;如果没有匹配,则打印无。 # 用来表示它是一个空字符串。除了空字符串部分,我已经得到了一切,所以这是我的代码 和示例输入将是
1)#,aac,acc,abc,ac,abbc,abbbc,abbbbc,aabc,accb
我希望第二个输入是
2)b*
我试图得到的输出是#
到目前为止它什么也没输出
import re
inp = input("Search String:").upper().split(',')
for runs in range(50):
temp = []
query = input("Search Query:").replace("?", "[A-Z_0-9]+?+$").upper()
for item in inp:
search = re.match(query, item)
if search:
if search.group() not in temp:
temp.append(search.group())
if len(temp) > 0:
print(" ".join(temp))
else:
print("NONE")
【问题讨论】:
-
x = print("...可能是个问题。 -
我喜欢在测试正则表达式时使用regex101.com/#python。它可以让你分解你的表达,这很有帮助。
-
哦,我正在测试一些东西,让我删除它
-
你确定它“什么都不输出”吗?当我运行您的确切程序时,它会输出“NONE”。
-
是的,但它不应该输出无