If statement 如何与latex中的宏进行比较

If statement 如何与latex中的宏进行比较,if-statement,macros,latex,conditional,If Statement,Macros,Latex,Conditional,我想将两个宏\Lgiii与一个名为fex的宏中读入为#1的宏进行比较 \def\fex(#1,#2) ifx\Lgiii#1 do something else do something else fi 然而,这似乎不起作用,也许有人有一个快速的解决办法 为了比较宏,需要将参数存储在某个宏中;这允许您使用\ifx: \documentclass{article} \def\fex(#1,#2){% \def\Lgi{#1}% Store first argument in \L

我想将两个宏\Lgiii与一个名为fex的宏中读入为#1的宏进行比较

\def\fex(#1,#2)
ifx\Lgiii#1
  do something
else
  do something else
fi

然而,这似乎不起作用,也许有人有一个快速的解决办法

为了比较宏,需要将参数存储在某个宏中;这允许您使用
\ifx

\documentclass{article}

\def\fex(#1,#2){%
  \def\Lgi{#1}% Store first argument in \Lgi
  \ifx\Lgiii\Lgi
    do something
  \else
    do something else
  \fi
}
\def\Lgiii{something \relax + 2}

\begin{document}

\fex(this,that)

\fex(something \relax + 2,that)

\fex(something \relax +2,that)

\end{document}