首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在Latex中查找和替换来自相同环境/命令的文本

在Latex中查找和替换来自相同环境/命令的文本
EN

Stack Overflow用户
提问于 2022-09-02 20:46:54
回答 2查看 28关注 0票数 0

我正在使用背叶编写Latex,我希望轻松地从Latex文件的相同环境中找到和替换特定的文本。

示例文本,

代码语言:javascript
运行
复制
abc xyz \a{} mno

\begin{equation}
   \a{}=a+c
   \a{}=c+b
\end{equation}

klm mno
\begin{equation}
   x=\a{}\times\b{}
\end{equation}
xyz mno \a{} abc

我只想在方程中将\a{}替换为其他文本xyz

我要短信,

代码语言:javascript
运行
复制
abc xyz \a{} mno

\begin{equation}
   xyz=a+c
   xyz=c+b
\end{equation}

klm mno
\begin{equation}
   x=xyz\times\b{}
\end{equation}
xyz mno \a{} abc

我试了很多次,用我的一点点判读知识来匹配课文。这些方法正确吗?

代码语言:javascript
运行
复制
/(?:\b(?:\\begin\{equation\})="|\G(?!\\end\{equation\}))[^}]*\K(\\a\{\})/g

和,

代码语言:javascript
运行
复制
/(?<=\\begin\{equation\})[\s\S]*\\a\{\}[\s\S]*(?=\\end\{equation\})/gs
EN

Stack Overflow用户

发布于 2022-09-02 21:20:11

不需要实际替换宏,只需让latex在方程中重新定义宏:

代码语言:javascript
运行
复制
\documentclass{article}

\def\a{a}

\AtBeginEnvironment{equation}{\def\a{xyz}}

\begin{document}

abc xyz \a{} mno

\begin{equation}
   \a{}=a+c
   \a{}=c+b
\end{equation}

klm mno
\begin{equation}
   x=\a{}\times b
\end{equation}
xyz mno \a{} abc


\end{document}
票数 1
EN
查看全部 2 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73587809

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档