我试图解析并删除每行加载的任何\command
(\textit
等...)(来自.tex文件或来自lilypond文件的其他命令{{1 }})。
我怎么能这样做?
[\clef, \key, \time]
输入
import re
f = open('example.tex')
lines = f.readlines()
f.close()
pattern = '^\\*([a-z]|[0-9])' # this is the wrong regex!!
clean = []
for line in lines:
remove = re.match(pattern, line)
if remove:
clean.append(remove.group())
print(clean)
预期输出
#!/usr/bin/latex
\item More things
\subitem Anything
答案 0 :(得分:2)
您可以使用this pattern ^\\[^\s]*
:
python中的示例代码:
import re
p = re.compile(r"^\\[^\s]*", re.MULTILINE)
str = '''
\item More things
\subitem Anything
'''
subst = ""
print re.sub(p, subst, str)
结果将是:
More things
Anything
答案 1 :(得分:0)
这将有效:
'\\\w+\s'
它搜索反斜杠,然后搜索一个或多个字符和空格。