latexcodec剥离斜杠但不翻译字符(Python)

2024-05-13 05:58:39 发布

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

我正在尝试处理一些Bibtex条目,这些条目通过Pybtex转换为XML树。我想继续处理所有的特殊字符,从他们的LaTexSpecials到unicode字符,通过latexcodec。通过问题Does pybtex support accent/special characters in .bib file?和文档,我检查了语法,但是,我没有得到正确的输出。你知道吗

>>> import latexcodec
>>> name = 'Br\"{u}derle'
>>> name.decode('latex')
u'Br"{u}derle'

我已经在不同的字符串和特殊字符上测试过了,它总是去掉第一个斜杠而不翻译字符。我应该以不同的方式使用latexencoder来获得正确的输出吗?你知道吗


Tags: namebrsupportunicode条目xmlbibtex字符
1条回答
网友
1楼 · 发布于 2024-05-13 05:58:39

反斜杠根本不包含在字符串中,因为它被视为字符串转义,所以编解码器永远不会看到它:

>>> print 'Br\"{u}derle'
Br"{u}derle

使用原始字符串:

name = r'Br\"{u}derle'

或者,尝试从文件中读取实际数据,在这种情况下,原始/非原始的区别无关紧要。(区别仅适用于Python源代码中的文本字符串。)

相关问题 更多 >