python字符串分割,保留分隔符

原文的代码是在看的头痛

不保留分隔符

"[ ]"在里面填写分隔符,不会保留分隔符。

import re

sentence = "你在北京 我,你是谁?在干嘛."

items = re.split("[.。!!??;;,,\s+]", sentence.decode("utf8"))
for item in items:
    print item

结果:
在这里插入图片描述

保留分割符

想要保留分隔符,需要加入(),就是"([ ])" 这样就会保留分隔符

import re

sentence = "你在北京 我,你是谁?在干嘛."

items = re.split("([.。!!??;;,,\s+])", sentence.decode("utf8"))
for item in items:
    print item

结果:
在这里插入图片描述

将分隔符放在句子后面

这其实是围魏救赵,侧面的解决了问题

import re

a = "你在北京 我,你是谁?在干嘛."

sentences = re.split(r"([.。!!??;;,,\s+])", a)
sentences.append("")
sentences = ["".join(i) for i in zip(sentences[0::2], sentences[1::2])]

print(sentences)

结果:

['你在北京 ', ‘我,’, ‘你是谁?’, ‘在干嘛.’]

  • 3
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值