我正在使用pcre regex,并希望在begin{pmatrix}
之后选择最终的}
。。。CCD_ 3以将其替换为CCD_。
上下文是,我正在为LaTeX制作一个从bmx{...}
到begin{pmatrix}...end{pmatrix}
的自动转换器,这是我过程中的最后一步。
我试过
(?<=\begin{pmatrix})(?:(.*?)(?=}))(.)
它利用了一个积极的后备和一个非捕获组来帮助我在矩阵的肉后面(之前(找到}
。
为什么非捕获组仍在捕获?它使我无法完成我的项目。
以下是regex的链接:https://regex101.com/r/FIUBMt/1
根据您当前的正则表达式逻辑,修复将是
\begin{pmatrix}[^}]*K}
请参阅regex演示。
详细信息:
\begin{pmatrix}
-\begin{pmatrix}
字符串[^}]*
-除}
之外的零个或多个字符K
-匹配重置运算符,用于丢弃匹配值中当前匹配的文本}
-唯一匹配并消耗的}