\subsection 中带下划线的字符串,如 ABC_XYZ

\subsection 中带下划线的字符串,如 ABC_XYZ

我需要在 \subsection 字符串中带有下划线,例如 ABC_XYZ。

\subsection{文本 ABC_XYZ}

当我尝试使用 pdflatex 进行编译时:

Missing $ inserted ...ine {1.2}Text ABC_XYZ}{4}{subsection.1.1.2}
Extra }, or forgotten $ ...ine {1.2}Text ABC_XYZ}{4}{subsection.1.1.2}

我无法写入ABC\_XYZ。对我来说,自动找到此字符串 ABC_XYZ 非常重要。而且我需要目录中的此字符串。

选项

\verb+ABC\_XYZ+ 

不工作。

你能帮助我吗?

答案1

我认为,如果您有下划线字符,那么您可能还会有其他字符(例如%,,,和),这些字符在 TeX 中具有特殊含义。如果是这样,您可能需要使用该包并创建一个命令(“受保护的 URL”的缩写),以便相关字符串可以成为“移动参数”的一部分(例如,当它们出现在命令的参数中时):&#$url\purl\caption

在此处输入图片描述

\documentclass{article}
\usepackage{url}
\urlstyle{same} % omit this command if you want monospaced-font look
\newcommand\purl[1]{\protect\url{#1}} % "protected url"
\begin{document}
\tableofcontents
\subsection{Text \purl{ABC_XYZ}}
\end{document}

答案2

我真的无法想象需要你能够_在章节标题中写字的情况,但当然,有时你会遇到类似这样的模糊问题。一种方法是替换

\subsection{Text ABC_XYZ}

经过

\catcode`\_=13 
\def_{\textunderscore}
\subsection{Text ABC_XYZ}
\catcode`_=8

我不会发誓它不会产生不良后果,但实际上可能如此,因为 的定义似乎\subsection不使用_

相关内容