python - 尝试从字符串中删除 2 个子字符串
问题描述
我试图找到一个正则表达式,它将在以下条件下从给定字符串中删除 2 个子字符串:
- 第一个子字符串总是 -m
- 第二个子字符串将跟进并以空格结尾
例如,在这个字符串中 -
bla blaaa ballla -m /gkdfs/dfsd/sdf bllaggw
预期的结果应该是
bla blaaa ballla bllaggw
我尝试了以下正则表达式 - -m (.*)
但它会选择 -m 之后的所有字符串,并且不会在第一个空格处停止。
我将非常感谢帮助/想法
谢谢大家!
解决方案
这可以适合你:
import re
regex = r"-m\s\S*"
test_str = "bla blaaa ballla -m /gkdfs/dfsd/sdf bllaggw"
subst = ""
# You can manually specify the number of replacements by changing the 4th argument
result = re.sub(regex, subst, test_str, 0, re.MULTILINE)
if result:
print (result)
输出 :
bla blaaa ballla bllaggw
在这里测试代码
在这里测试正则表达式
推荐阅读
- c# - 当 AutoSizeRowsMode 为 AllCells 时,datagridview 无法设置行高
- html - 如果文本像“...更多”一样溢出,如何添加自定义文本
- apache-flink - 对 JobManager 和 JobMaster 感到困惑
- arrays - 如何在 MPLABx 中以图形方式可视化数组的内容
- c# - 存储到数据库中的长文本字符串的有效比较
- php - 根据用户的注册日期,通过日期分组获取固定的记录数
- python - 无法抓取谷歌结果
- android - 删除不支持 Google Play 的消息
- pandas - 如何在熊猫数据框中为缺失的年份和季度创建行
- python - 在迭代卡方测试的行中获取 KeyError