You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何简洁实现列表元素按空格与标点拆分?已尝试regex、split

简洁解决列表元素按空格/标点拆分的问题

嘿,我懂你要的效果——就是把列表里的每个元素都拆成不含空格、不含标点的纯字符片段对吧?之前试了regex和split没找到简洁的方法?其实用Python的re.findall()就能一步搞定,超顺手!

直接上解决方案代码

import re

original_list = ['Toms', 'ad sf', "Joe's"]
# 用正则匹配所有连续的字母/数字/下划线片段
result = [token for item in original_list for token in re.findall(r'\w+', item)]

print(result)
# 输出: ['Toms', 'ad', 'sf', 'Joe', 's']

为啥这个方法好用?

  • r'\w+'这个正则表达式会匹配一个或多个连续的字母、数字、下划线,刚好完美避开空格和所有标点符号,直接提取你需要的纯字符片段。
  • 如果你的场景里不需要匹配下划线,可以把正则改成r'[a-zA-Z0-9]+',这样就只提取字母和数字啦。
  • 用列表推导式嵌套,把每个元素的拆分结果平铺成一个新列表,代码简洁又易读,不用写一堆循环或者处理split后的冗余内容。

测试验证

针对你给的初始列表['Toms', 'ad sf', "Joe's"],运行上面的代码后,得到的结果完全符合你的目标:['Toms', 'ad', 'sf', 'Joe', 's'],每个元素都没有空格或标点~

内容的提问来源于stack exchange,提问作者Bob Joe

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.21 03:38:47