看来您正在处理一个 TeX 文件......那么为什么不直接使用 TeX 来执行此操作呢?那么你就确定不会有任何问题和副作用,例如,
\word {there's a space between \verb=\word= and the curly bracket}
这仍然有效!它仍然适用于多行内容:
\word{this is
a multiline stuff \emph{and you can even add more groupings in it,}
it'll still work fine!}
在您的 (La)TeX 序言中,只需添加:
\newwrite\file
\immediate\openout\file=output.txt
\def\word#1{\immediate\write\file{#1}}
或者\newcommand
如果您使用的是 LaTeX 而不是plainTeX,请使用。
你也可以把你的定义宏放在\immediate\write\file{#1}
里面。\word
如果您无权访问\word
宏(例如,它在类或样式文件中),您可以:
\let\oldword\word
\def\word#1{\immediate\write\file{#1}\oldword{#1}}
希望这可以帮助!