我正在读取文件并在文件内容上使用正则表达式来执行一些操作。在读取文件时,我没有在其中找到任何特殊字符,但是在对文件内容使用正则表达式并将其保存到列表后,数字前有特殊字符,如 \t 和 \xa0。
示例文件内容:
Hydrochloric Acid to pHÂ 3.3-5.0 q.s. q.s. q.s. pH-regulator Ph Eur, NF
应用正则表达式后变为:
Hydrochloric Acid to pHÂ\xa03.3-5.0\tq.s.\tq.s.\tq.s.\tpH-regulator\tPh Eur, NF
如何在没有单独的字符串替换技术的情况下删除所有这些?
代码:
def extract(filename):
file=open(filename)
file=file.read()
print(file)
print("wefewwEF3RF3")
result = []
med = r"(?:{})".format("|".join(map(re.escape, medicines)))
pattern = re.compile(r"^\s*" + med + r".*(?:\n[^\w\n]*\d*\.?\d+[^\w\n]*(?:\n.*){2})?", re.M|re.IGNORECASE)
result = pattern.findall(file)
# result.encode('ascii', 'ignore')
newresult = []
for line in result:
newresult.append((line.strip()))
return newresult
该newresult
列表包含原始文件中不存在的所有这些特殊字符。