考虑字符串:
text = "aaAA23 aAAA32 32AeeeB fjdSkjj839jl2lkjj"
pat = ?
result = re.findall(pat, text)
我正在寻找一种模式,它将给出以下结果:
["aaAA23", "aAAA32", "32Aeee", "dSkjj8"]
我是以一种天真的方式做这件事的:
pat = "[a-z]+[A-Z]+[0-9]+|[A-Z]+[a-z]+[0-9]+|[a-z]+[0-9]+[A-Z]+|[A-Z]+[0-9]+[a-z]+|[0-9]+[a-z]+[A-Z]+|[0-9]+[A-Z]+[a-z]+"
这不起作用,因为它产生:
["aaAA23", "aAAA32", "32Aeee", "Skjj839"]
怎么做
使用与每个所需字符类型匹配的lookahead
DEMO
相关问题 更多 >
编程相关推荐