如何创建带索引的计数器?

如何创建带索引的计数器?

我需要创建名称为 mycounter1、mycounter2 等的计数器……基本上,这应该是一个计数器值数据数组。代码如下

\newcounter{index}
\newcounter{\csname mycounter\the\value{index}\endcsname}

不起作用。似乎不可能使用\csname...\endcsname作为计数器名称。使用\expandafter不同的变体也无济于事。有办法解决这个问题吗?

答案1

计数器没有前导反斜杠,而这正是计数器\csname要放进去的。因此

\newcounter{mycounter\Alph{index}}

完成这项工作。使用计数器似乎数字也可以工作:

\newcounter{mycounter\arabic{index}}.

下面的 MWE 得出:

在此处输入图片描述

笔记:

代码:

\documentclass{article}

\newcounter{index} 
\setcounter{index}{1}

\newcounter{mycounter\arabic{index}}
\newcounter{mycounter\Alph{index}}


\begin{document}
Counter\arabic{index} = \arabic{mycounter\arabic{index}}

Counter\Alph{index} = \arabic{mycounter\arabic{index}}
\end{document}

答案2

forarrayarrayjobx使用 LaTeX 处理数组的包。

当然,LuaLaTeX 在 Lua 中原生提供了数组。

相关内容