re.sub
场景:re.sub如何做到替换多行
re.sub怎么做到替换多行?
不知道怎么实现?
------解决方案--------------------
先将字符串用split("\n")然后再[:]可否。。
------解决方案--------------------
re.sub(pattern, repl, string[, count, flags])
默认.不能匹配换行,所以要设置flags=re.S,要保留回车空白等,弄个合适的函数当repl参数:
re.sub怎么做到替换多行?
- Python code
import re s = """ddd[AA]ff[/AA]hh[BB]G G[/BB]TT[AA]66[/AA][BB]Dd[/BB]f""" val = re.sub(r'\[BB\](.*?)\[/BB\]', "", s) print val 结果如下: ddd[AA]ff[/AA]hh[BB]G G[/BB]TT[AA]66[/AA]f 我实际想要的是: ddd[AA]ff[/AA]hh TT[AA]66[/AA]f
不知道怎么实现?
------解决方案--------------------
先将字符串用split("\n")然后再[:]可否。。
------解决方案--------------------
re.sub(pattern, repl, string[, count, flags])
默认.不能匹配换行,所以要设置flags=re.S,要保留回车空白等,弄个合适的函数当repl参数:
- Python code
import re def repl(m): return re.sub(r'\S', '', m.group(0)) s = """ddd[AA]ff[/AA]hh[BB]G G[/BB]TT[AA]66[/AA][BB]Dd[/BB]f""" val = re.sub(r'\[BB\](.*?)\[/BB\]', repl, s, flags=re.S) print val