![如何在数学环境中使用 \foreach?](https://linux22.com/image/324906/%E5%A6%82%E4%BD%95%E5%9C%A8%E6%95%B0%E5%AD%A6%E7%8E%AF%E5%A2%83%E4%B8%AD%E4%BD%BF%E7%94%A8%20%5Cforeach%EF%BC%9F.png)
我正在寻找一种方法来循环生成align
环境的行,或IEEEeqnarray
类似的东西。我可以看到它\foreach
在数学模式下有效(\[ \]
例如在内部),但像这样的东西
\begin{align*}
\foreach \i in {1,...,5}
{
V_\i & = 12345
}
\end{align*}
失败
! Extra }, or forgotten \endgroup.
<template> }
$}\ifmeasuring@ \savefieldlength@ \fi \set@field \endtemplate
l.161 \end{align*}
我可以轻松完成这项工作吗?
答案1
问题是,\foreach
为了防止覆盖迭代变量的内容,需要对一组进行评估。TeX 不允许将对齐标签分组到对齐中,因此会出现错误。您可以使用包\pgfplotsforeachungrouped
中的pgfplots
来规避该限制。此外,您可能还想再次查看格式。输出看起来并不是所需的。您还应该用括号括住索引,否则当您达到两位数的索引时,您会感到惊讶。
\documentclass{article}
\usepackage{mathtools,pgfplots}
\begin{document}
\begin{align*}
\pgfplotsforeachungrouped \i in {1,...,5}
{
V_{\i} & = 12345
}
\end{align*}
\end{document}