gpt4 book ai didi

python - 匹配子字符串列表中的子字符串

转载 作者:太空宇宙 更新时间:2023-11-04 10:56:45 25 4
gpt4 key购买 nike

有一个更好的方法来处理正则表达式,

>>> HOSTS=['backup-ros', 'backupa-files', 'print-server1','print-server2'] 
>>> for host in HOSTS:
... if 'backup' in host:
...
backup-ros
backupa-files

部分正确。

我试过这个:

a=re.findall(r'backup-(\w+)', ' '.join(HOSTS))
>>> a
['ros']

这给了我“ros”。

最后:

a=re.match(r'backup-(\w+)', ' '.join(HOSTS))
>>> a.group()
'backup-ros'

我认为是正确的。但是,我仍然想问一下这是否是正确的更好的方法。

编辑:我在发表一些评论后意识到,我并不清楚我在寻找什么。我需要在目录中找到名为“backup-somename”的目录的名称。但我不想包含名称为“backupa-somename”或“backupb-somename”的目录。这就是为什么我的第一个 for 循环对我来说不够好。

提前致谢。盎司

最佳答案

没有正则表达式,你可以考虑 .startswith() 吗?

>>> HOSTS = ['backup-ros', 'backupa-files', 'print-server1','print-server2']
>>> backups = [x for x in HOSTS if x.startswith('backup-')]
>>> backups
['backup-ros']

无需将列表加入字符串。

关于python - 匹配子字符串列表中的子字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9231521/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com