【发布时间】:2021-06-22 22:00:28
【问题描述】:
然后我想在 Visual Studio Code 中用第一组或$1 替换匹配的文本。结果如下:
我想在 python 中实现同样的想法,我已经编写了这段代码。
import re
file = "out FCE.txt"
pattern = re.compile(".+")
for i, line in enumerate(open(file)):
for match in re.finditer(pattern, line):
print(re.sub(r"\n([\d])", r"\1", match.group()))
但是该代码对它没有任何作用。这意味着结果仍然与第一张图片相同。不会删除换行符和第一个字符处带有数字的行。我已经读过this answer,python 使用的是\1 而不是$1。是的,我想保留空格之间的空格,以便像\t\t\t 一样整洁。
对不起,如果我的解释令人困惑,而且我的英语不好。
【问题讨论】:
-
在调用
re.sub时使用原始字符串:re.sub(r'\n([\d])', r'\1', match.group()) -
您需要使用原始字符串或转义反斜杠...
-
我试过了,但根本不起作用。结果还是一样。
-
为什么要把
\d放在[\d]中?\d不工作吗?
标签: python regex visual-studio-code