我正在使用 \pgfplotsinvokeforeach{0,1,2} {...}
并希望以某种方式分派#1
以获取以下三个字符串之一:
$s_A$
如果#1 == 0
$s_B$
如果#1 == 1
$s_C$
如果#1 == 2
有没有简单的方法可以做到这一点?我尝试过使用 xstring,\StrMid
但它会崩溃并抱怨let
做错了什么。
答案1
您可以尝试基于 LaTeX3 的解决方案。\pgfplotsinvokeforeach
但不确定它是否适用于您的代码。
\documentclass{article}
\usepackage{expl3}
\ExplSyntaxOn
\newcommand{\intcase}[1]{
\int_case:nn {#1} {
{1} {$s\c_math_subscript_token A$}
{2} {$s\c_math_subscript_token B$}
{3} {$s\c_math_subscript_token C$}
}
}
\ExplSyntaxOff
\begin{document}
\intcase{1}\intcase{2}\intcase{3}
\end{document}