python - 如何使用 re.sub
问题描述
我想修改字符串测试,只剩下“TEXT”。因此删除“TEXT”之后的所有内容。我想通了。但是如何使用 re.sub 剪切“TEXT”之前的所有内容?我只想使用“265”和“159”作为判断何时删除的标准。
test = "314 159 TEXT 265 357"
test = re.sub(r' 265.*$', '', test)
print(test)
输出应为“文本”
解决方案
使用与结尾类似的模式,并将它们串在一起。:
test = re.sub(r'.* 159 ', '', re.sub(r' 265.*$', '', test))
或者,您可以使用单个模式和re.findall
:
test = re.findall(r'^.*159 ([A-Z]+) 265.*$', test)
推荐阅读
- c++ - 将 nlohmann/json 构建为 bazel 库会出现“没有构建”错误
- c - 在 C 中的 EOF 之后,while 循环仍然打印一次
- com - 我注册的 COM 对象不能作为 InProc 运行
- python - FileNotFoundError at /user/profile/edit [Errno 2] 没有这样的文件或目录:'user_3/profile.jpg'
- facebook - Dialogflow 后续意图不起作用?训练代理中的“操作”显示“不可用”。
- angular - Angular Reactive Form,动态创建表单控件
- r - 如何解决这个问题?错误:提供给连续刻度的离散值
- javascript - 霍夫曼编码中丢失的信息
- android - 主要活动中的导航控制器
- amazon-web-services - Use of redis cluster vs standalone redis