我有一个LaTeX
如下的代码:
--- text might be here ---
$\begin{cases}
k & l & m \\
x & y & z
\end{cases}$
--- text might be here ---
$\begin{cases}
k & l & m \\
x & y & z
\end{cases}$
--- text might be here ---
$\begin{cases}
k & l & m \\
x & y & z
\end{cases}$
--- text might be here ---
我创建它是regex
为了捕捉每个cases
环境:
\\begin\{cases\}((\s*.*\s*)*)\\end\{cases\}
发生的情况是,它从第一个\begin{cases}
到最后一个进行匹配\end{cases}
,而我需要它独立地匹配每个环境,也就是说,在匹配\end{cases}
每个\begin{cases}
环境之后匹配第一个。
请注意,空格、换行符和制表符不是必需的,并且可能并不总是存在。
答案1
一般来说,你可以采用不同的方法:
- 使用惰性量词
.*?
代替.*
- 如果发现某些字符仅出现在结尾处,则排除它们
[^{]*
或者[^\]
代替.*