python - 使用多个分隔符拆分字符串并保留分隔符
问题描述
我正在寻找一种通过多个分隔符拆分字符串并保留字符串被拆分的分隔符的优雅方式。
例子:
input_str = 'X < -500 & Y > 3000 / Z > 50'
split_str = re.split("and | or | & | /", input_str)
print split_str
>>> ['X < -500', ' Y > 3000', 'Z > 50']
我想要得到的split_str
是:
['X < -500', '&', ' Y > 3000', '/', 'Z > 50']
解决方案
用括号试试:
>>> split_str = re.split("(and | or | & | /)", input_str)
>>> split_str
['X < -500', ' & ', 'Y > 3000', ' /', ' Z > 50']
>>>
如果要删除多余的空格:
>>> split_str = [i.strip() for i in re.split("(and | or | & | /)", input_str)]
>>> split_str
['X < -500', '&', 'Y > 3000', '/', ' Z > 50']
>>>
推荐阅读
- docker - 无法使用 Google Cloud Kubernetes 替换
- python-3.x - 在 Python 中将列表连接成字符串
- android - 如何在 64 位设备(android)上运行颤振应用程序?
- android - Unity - 首次运行时未加载 Android 上的数据库
- tensorflow - 用 Tensorflow 解决有向图问题
- android-source - 在aosp中构建静态库
- css - vuetify 上有卡片页脚/卡片组功能吗?
- javascript - Javascript - 更新对象道具的功能
- scala - Scala:错误:重载方法值信息与 log4j 的替代品
- azure - 有没有办法跟踪 Cosmos DB 更改历史记录