我正在尝试删除除字母以外的所有字符以及空格。
这就是我的代码。
其中sampletext.txt包含具有多个字符的单词,我将结果写在remove.txt中。
当我运行这段代码时。我在removeed.txt中仅获得空白
import re
import sys
filename = open("removed.txt",'w')
sys.stdout = filename
from string import ascii_letters
allowed = set(ascii_letters + ' ')
with open("/Desktop/stem_analysis/sampletext.txt", 'r') as f:
answer = ''.join(l for l in f if l in allowed)
print(answer)
我的代码有什么问题
答案 0 :(得分:1)
我正在尝试删除除字母以外的所有字符以及 空格。
我不确定您要做什么,但是要删除除字母之外的所有其他字符以及空格,您可以使用类似的方法:
temp = sorted(inord)
return min([1 if i==j else 0 for i,j in zip(temp,inord)])
正则表达式说明
答案 1 :(得分:0)
这将为您提供所有不在字母表中的字符。添加另一个if语句以检查空格。
def letters(input):
return ''.join([c for c in input if (c.isalpha()==False)])
答案 2 :(得分:0)
类似这样
导入 re.sub(r'^ [a-zA-Z]','',your_string)
应该按照您的要求进行操作,但空格部分除外。我相信您也可以弄清楚如何将其添加到正则表达式中。