我需要在 lstlisting 块中使用下标和上标。lstlisting 可以用 Latex 命令替换字符串,但是也可以替换某种正则表达式,例如
_<something> and ^<something>
识别需要替换的字符串?
谢谢 :-)
答案1
mathescape
最简单的方法可能是在命令中使用选项\lstset
。这不仅允许您使用上标和下标,还可以让您访问数学模式中可以执行的其他操作。它还可能会对您的格式产生微妙而奇怪的影响,但您也许可以在对您重要的地方对此进行解释。
例子。
\documentclass{article}
\usepackage{listings}
\lstset{
mathescape,
literate={->}{$\rightarrow$}{2}
{ε}{$\varepsilon$}{1}
}
\begin{document}
\begin{lstlisting}
R -> ε | $\ell$ | (R|R) | (RR) | R$^\ast$
$\ell\,$ -> a | b | c | $\cdots$
\end{lstlisting}
\end{document}
结果。