0
点赞
收藏
分享

微信扫一扫

Python正则表达式-匹配局部模式并且替换掉


问题

Python正则表达式-匹配局部模式并且替换掉_解决方案


Python正则表达式-匹配局部模式并且替换掉_解决方案_02

解决方案

  • 用到了group提取
  • 用到了.*?的非贪婪匹配(默认是贪婪匹配)

代码

In [35]: data = "HJ_2.5bb_BTN_Call_SB_Call_BB_14.0bb_HJ_FOLD_BTN_AllIn_SB_Call_BB_strategy.txt"

In [36]: r = re.match(r"(.*_)(.+?_FOLD_)(.*)", data)

In [37]: r.groups()
Out[37]:
('HJ_2.5bb_BTN_Call_SB_Call_BB_14.0bb_',
'HJ_FOLD_',
'BTN_AllIn_SB_Call_BB_strategy.txt')

In [38]: re.sub(r"(.*_)(.+?_FOLD_)(.*)", r"\1\3", data)
Out[38]: 'HJ_2.5bb_BTN_Call_SB_Call_BB_14.0bb_BTN_AllIn_SB_Call_BB_strategy.txt'


举报

相关推荐

0 条评论