You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用Python自动补全LaTeX公式中\left与\right配对标记

问题背景

在LaTeX中,(…)、[…]、{…}这类分隔符可以分别在开、闭分隔符前加\left和\right,实现尺寸随内部公式自动适配,典型用法是\left( <equation> \right)。
但\left和\right必须配对使用,每出现一个\left就要对应一个\right,否则会触发编译错误。如果只需要单侧分隔符,可以在缺失配对的位置加\left.(\left加英文句号)或者\right.(\right加英文句号)解决,示例用法为\left(<equation>\right.或者\left.<equation>\right)。

需求说明

需要用Python实现自动插入缺失的配对标记,遵循以下规则:

  • 若存在未配对的\left,需要插入对应数量的\right.,位置优先选当前区间内的&、换行符\\或者\end{}之前;如果区间结束前有\nonumber标签,要把\right.插入到\nonumber之前。
  • 若存在未配对的\right,需要插入对应数量的\left.,位置优先选当前区间内的&、换行符\\或者\begin{}之后。
示例

输入示例

\begin{align}
    \left( content & content \right) content \left( content \left( content \right) \\
    content \right) \left(content \left( content \\
    content \right)
\end{align}

\begin{align}
    \left( content & content \right) content \left( content \left( content \right) \nonumber \\
    content \right) \left( content \left( content \nonumber \\
    content \right)
\end{align}

预期输出

(方括号内容为自动生成,实际输出不需要方括号)

\begin{align}
    \left( content \right. & \left. content \right) content \left( content \left( content \right) \right. \\
    \left. content \right) \left( content \left( content \right.  \right. \\
    \left. content \right)
\end{align}

\begin{align}
    \left( content \right. & \left. content \right) content \left( content \left( content \right) \right. \nonumber \\
    \left. content \right) \left( content \left( content \right. \right. \nonumber \\
    \left. content \right)
\end{align}

内容的提问来源于stack exchange,提问作者jee-ar

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.04 18:36:01