大家好,我无法获取或链接 Core-1 的内容来查找表格内容,当我使用 \coreOne 时,Core-1 的内容是 ENGL,我得到的输出是 ENGL,那么如果我使用 \coreOne(即 \ENGL)会发生什么?我应该能够得到英语吗,因为我已经定义了 \newcommand{\ENGL}{English}。请帮助我,这是我的 MWE
\documentclass[a4paper]{article}
\usepackage{xstring,datatool}
\newcommand{\ENGL}{English}
\newcommand{\ALTE}{Alternative English}
\newcommand{\POSC}{Political Science}
\newcommand{\GEOG}{Geography}
\newcommand{\LOPH}{Logic \& Philosophy}
\newcommand{\ENVE}{Environmental Education}
\begin{filecontents*}{mark.csv}
Name,Core-1,Core-2,EL-1,EL-2,EL-3,Comp
Biki Teron,ENGL, ALTE, POSC, GEOG, LOPH, ENVE
\end{filecontents*}
\DTLloaddb{data}{mark.csv}
\begin{document}
\DTLforeach*{data}{\name=Name, \coreOne=Core-1}{
\ \coreOne
}
\end{document}
答案1
我不太确定我是否理解您的意思,但也许您正在寻找 \csname..\endcsname:
\documentclass[a4paper]{article}
\usepackage{xstring,datatool}
\newcommand{\ENGL}{English}
\newcommand{\ALTE}{Alternative English}
\newcommand{\POSC}{Political Science}
\newcommand{\GEOG}{Geography}
\newcommand{\LOPH}{Logic \& Philosophy}
\newcommand{\ENVE}{Environmental Education}
\begin{filecontents*}{mark.csv}
Name,Core-1,Core-2,EL-1,EL-2,EL-3,Comp
Biki Teron,ENGL, ALTE, POSC, GEOG, LOPH, ENVE
\end{filecontents*}
\DTLloaddb{data}{mark.csv}
\begin{document}
\DTLforeach*{data}{\name=Name, \coreOne=Core-1}{
\csname\coreOne\endcsname
}
\end{document}