HTML から LaTeX へのパーサーを本来の目的 (HTML のスニペットを LaTeX のスニペットに変換する) に合わせて調整しましたが、変数の入力に少し問題があります。問題は、変数に LaTeX 予約文字 (すなわち ) を含めることを許可する必要# $ % ^ & _ { } ~ \
があることです。これらは、LaTeX レンダラーを強制終了しないようにエスケープする必要があります。
変換を処理するプログラムとすべてが Python で記述されているため、適切な解決策を見つけようとしました。私の最初のアイデアは単に a を実行する.replace()
ことでしたが、replace では、最初のが でない場合にのみ一致させることはできません\
。2 回目の試行は正規表現でしたが、惨めに失敗しました。
私が思いついた正規表現は([^\][#\$%\^&_\{\}~\\])
. これが予約文字のいずれかと一致することを望んでいましたが\
、前に がない場合に限ります。残念ながら、これは入力テキストの 1 文字に一致します。この正規表現でさまざまなバリエーションも試しましたが、うまくいきません。バリエーションは主に、正規表現の 2 番目の部分でスラッシュを削除/追加することで構成されていました。
誰でもこの正規表現を手伝ってもらえますか?
編集おっと、スラッシュも含まれているようです。これを投稿したときにどれだけ起きていたかを示しています:)私の場合、それらはエスケープされるべきではありませんが、回答の正規表現からそれらを削除するのは比較的簡単です。皆さんありがとう!