\def 命令的显示值

\def 命令的显示值

我是一个新的 Latex 用户,仍在摸索着遵循大量规则。我正在尝试做以下事情:

\def\ErDeedABookA {18A-Book}
\def\ErDeedBBookB {18B-Book}
\def\ErDeedCBookC {18C-Book}

这是我使用的代码:

\newcommand{\Xslash}{\char`\\}
\def\LP {A}\\
\def\Er {\Xslash ErDeedABook}
\def\ebook {\Er\LP}

电子书的显示值:\ebook

我预期:显示“18A-Book”,但我得到的是:\ErDeedABookA 我一定是缺少了一个步骤来告诉 Tex 给我命令的值而不是命令?

答案1

在此处输入图片描述

假设在 A 案例中你指的是 Book 而不是 Page :

\documentclass{article}

\begin{document}

\newcommand\ErDeedABookA {18A-Book}
\newcommand\ErDeedBBookB {18B-Book}
\newcommand\ErDeedCBookC {18C-Book}


\newcommand\LP {A}
\newcommand\Er[1]{ErDeed#1Book#1}
\newcommand\ebook {\csname\Er\LP\endcsname}

\ebook


or in a loop

\newcounter{zz}
\renewcommand\thezz{\Alph{zz}}
\renewcommand\LP {\thezz}

\setcounter{zz}{0}
\loop
\ifnum\value{zz}<3
\stepcounter{zz}%

Case \thezz: \ebook
\repeat

\end{document}

相关内容