gpt4 book ai didi

python - re.findall - 从逗号分隔的字符串中获取项目列表

转载 作者:行者123 更新时间:2023-12-01 05:51:51 25 4
gpt4 key购买 nike

假设您有一个字符串(例如圣诞礼物列表)。

presents = 'iPods, Windows 8, .hack//Sign boxset , red shoes    , Wall-E DVD,  Deus Ex: Human Revolution        '

逗号分隔的项目都是任意的,可以包含数字、标点符号或特殊字符(逗号除外)。我想使用 Python 获取这些项目的数组。

presents_arr = ['iPods', 'Windows 8', '.hack//Sign boxset', 'red shoes', 'Wall-E DVD', 'Deus Ex: Human Revolution']

我通常会通过使用逗号分隔符拆分字符串,然后使用拆分清理每个字符串来实现此目的。

presents = presents.split(',')
presents = [present.strip() for present in presents]

出于好奇,我可以使用 re.findall 专门执行此操作吗?我需要与 split/strip 相同的行为。

最佳答案

直接翻译如下:

presents = [x.strip() for x in re.findall(r'[^,]*', presents) if x]

改进是根据逗号包围的空格进行分割:

presents = re.split(r'\s*,\s*', presents)

但是在这种情况下请不要执行上述任何操作。根本没有办法提高以下内容的清晰度:

presents = presents.split(',')

在这种情况下,性能也会比简单的分割更差。

关于python - re.findall - 从逗号分隔的字符串中获取项目列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13963683/

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