好吧,这题真服了,还是在源代码中,还是re.findall
注意这句话:
One small letter, surrounded by EXACTLY three big bodyguards on each of its sides
一个小写字母,前后各是3个大写字母,既然前后各是3个大写字母,那么,前后要各加一个 [^A-Z],保证这个是非大写字母
re.findall(“[^A-Z]+[A-Z]{3}([a-z])[A-Z]{3}[^A-Z]+”)
注意,此处([a-z]),括号必须有
re.findall(“[^A-Z]+[A-Z]{3}[a-z][A-Z]{3}[^A-Z]+”)
因为如果不加(),我们得到的结果可能
dqIQNlQSLidbzeOEKiVEYjxwaZADnMCZqewaebZUTkLYNgouCNDeHSBjgsgnkOIXdKBFhdXJVlGZVme
gZAGiLQZxjvCJAsACFlgfe
qKWGtIDCjn
即正则将所有匹配的字母哪出来了,不是我们想要的小写字母
这个地方需要注意的一点是”+”的含义是:重复1次或者更多次,不同的是”*”:重复0次或者更多次
Latest posts by Zhiming Zhang (see all)
- aws eks node 自动化扩展工具 Karpenter - 8月 10, 2022
- ReplicationController and ReplicaSet in Kubernetes - 12月 20, 2021
- public key fingerprint - 5月 27, 2021