【发布时间】:2010-04-13 05:17:51
【问题描述】:
我想接受用户输入(有时这将是大段落)并生成一个 LaTeX 文档。我正在考虑使用几个简单的正则表达式,用\textbackslash 替换\ 的所有实例,用\} 或\{ 替换{ 或} 的所有实例。
我怀疑这是否足够。我还需要做什么?注意:如果有为此制作的特殊库,我正在使用 python。
为了澄清,我不希望任何东西被解析为 LaTeX 语法:$a$ 应该替换为 \$a\$。
【问题讨论】:
-
由于 TeX 的复杂语义和解析规则,解决方案可能不是用 Python 处理,而是如何将数据转储到 LaTeX。如果您提供有关输入数据可以包含哪些内容的详细信息(应在何种程度上将其作为 LaTeX 处理?
---和\ae和数学模式是否有效?),有人可能会给您一个很好的答案。 -
另一个问题的重点是防止用户做有害的事情(获得 shell 访问权限),而不是确保输入在纯文本输入和文档中看起来相同。
标签: python latex sanitization