Python字符串中大写字母前增加空格的方法(字符串用大写字母分割)

这也是最近处理数据的实际需求,找了一些网页,发现大家都总结得不是很清楚,最后参考几位朋友的文章,例如这里: https://blog.csdn.net/oh5W6HinUg43JvRhhB/article/details/79676440
实现了需求,实际上很简单,就是用re包:
import re

pattern="[A-Z]"
new_string=re.sub(pattern,lambda x:" "+x.group(0),old_string)
print new_string

re.sub的具体使用方法可以参考这里:https://www.cnblogs.com/tina-python/p/5508402.html

一些相似的博客文章:https://blog.csdn.net/tao_627/article/details/50354110

另外,再总结一个需求,从连续的没有空格的英文字符串中提取出有意义的word,例如tableapplechairtablecupboard提取出:["table", "apple", "chair", "table", ["cupboard", ["cup", "board"]], ...],感觉这个需求也是很有意义的,Stack Overflow上已经有很多讨论和较详细的答案:https://stackoverflow.com/questions/8870261/how-to-split-text-without-spaces-into-list-of-words,有人根据这些讨论还开发一个Python包:wordninja,GitHub Repo的链接是:https://github.com/keredson/wordninja (word忍者)

发现其确实可以针对全是小写字母的字符串处理:

import wordninja

splited_words=wordninja.split(old_string.lower())
print splited_words
感觉这个工具确实造福人类啊!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值