[00101]使用多个界定符分割字符串

使用多个界定符分割字符串

一、 解决问题

你需要将一个字符串分割为多个字段,但是分隔符(还有周围的空格)并不是固定的。

二、解决方案

string 对象的split()
re.split()

"""
你需要将一个字符串分割为多个字段,但是分隔符(还有周围的空格)并不是固定的。
"""

"""
string 对象split() 
    它并不允许有多个分割符或者分割周围不确定的空格

re.split()
    灵活
"""

三、代码说明

import re

line = "asdf fjdk; afed, fjek,asdf, foo"
resval = re.split(r'[;,\s]\s*', line)
print (resval) #->['asdf', 'fjdk', 'afed', 'fjek', 'asdf', 'foo']
# 使用括号分组(会保留分割的字符串)
resval = re.split(r'(;|,|\s)\s*', line)
print (resval)
#->['asdf', ' ', 'fjdk', ';', 'afed', ',', 'fjek', ',', 'asdf', ',', 'foo']
# 如果不想保留分割字符串在结果列表中,但是需要使用括号来进行分组
# 确保分组时非捕获分组的话,使用(?:...)

resval = re.split(r'(?:,|;|\s)\s*', line)
print (resval) #->['asdf', 'fjdk', 'afed', 'fjek', 'asdf', 'foo']

四、关联知识

正则表达式: 传送门,待补充

五、总结

六、代码地址

github地址:https://github.com/weichen666/python_cookbook
目录/文件:second_selection/learn_str_split.py

七、参考

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值