大家好,我是Python进阶者。

一、前言

前几天在Python白银交流群【Python狗】问了一个Python正则表达式处理的问题,提问截图如下:

打开网易新闻 查看精彩图片

如果我是他的话,我会直接一步到位,使用notepad++打开文件,然后调出替换界面,全部替换即可,不需要代码实现也欧克的。不过这里使用Python的方式进行实现,一起来看看吧!

二、实现过程

这里【瑜亮老师】给了一份代码,如下所示:

import refilename = '西游记全集(吴承恩).txt'with open(filename, 'r', encoding='gbk') as f: data = f.read()result = re.sub(r'\#.*?\#', '', data)with open(filename, 'w', encoding='gbk') as f2: f2.write(result)

代码截图:

打开网易新闻 查看精彩图片

如果仅仅是粉丝截图发的那些需要替换的话,上面的代码是完全可以满足需求的,不过后来他又新增了一个新需求。

能不能把范围扩大点把最后的这个也匹配进去?答案在下面了。

打开网易新闻 查看精彩图片

加参数,匹配换行。使用re.S参数以后,正则表达式会将这个字符串作为一个整体,将\n当做一个普通的字符加入到这个字符串中,在整体中进行匹配。

三、总结

大家好,我是Python进阶者。这篇文章主要盘点了一个Python正则表达式处理的问题,文中针对该问题,给出了具体的解析和代码实现,帮助粉丝顺利解决了问题。

最后感谢粉丝【Python狗】提问,感谢【瑜亮老师】给出的思路和代码解析,感谢【dcpeng】等人参与学习交流。