인덱스로 문자열 찾기

인덱스로 문자열 찾기

나는 다음 세 가지 문자열 중 하나를 얻기 위해 \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}

답변2

\documentclass{article}
\usepackage{pgfplotstable}
\pgfplotsset{compat=1.16}
\newcounter{tmpcnt}
\begin{document}
\pgfplotsinvokeforeach{0,1,2}{%
  \setcounter{tmpcnt}{\numexpr1+#1}$s_{\Alph{tmpcnt}}$}
\end{document}

여기에 이미지 설명을 입력하세요

관련 정보