从文本文件中去除特殊字符,但保留新行(Python)

2024-05-13 01:25:12 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个文本文件,如下所示:

别这样

不能

不会的

不应该

我的目标是删除文本文件中的所有特殊字符,同时保留每个单词的新行。输出应如下所示:

不要

铁路超高

习惯

不应该

我当前正在使用以下代码:

import re

class TextCleaner:
    uncleanText = open("words.txt").read()
    cleanText = re.sub('[^A-Za-z0-9]+', '', uncleanText)
    open('words.txt', 'w').write(cleanText)

但是,这会产生以下结果: 不应该

我可以实现我的主要目标,同时保留新行使用正则表达式?在


Tags: 代码importretxt目标open单词class
1条回答
网友
1楼 · 发布于 2024-05-13 01:25:12

您可以添加\n以保留新行,或添加{}以保留任何空白。对于\s这是以下代码:

import re

class TextCleaner:
    uncleanText = open("words.txt").read()
    cleanText = re.sub('[^A-Za-z0-9\s]+', '', uncleanText)
    open('words.txt', 'w').write(cleanText)

相关问题 更多 >