\ begin {?}和\ end {?}的正则表达式

时间:2012-07-05 06:31:38

标签: regex mathjax

我需要匹配来自字符串\begin{?}\end{?},其中?是任意数量的字母数字或*字符,因此它必须匹配,例如\begin{align}\end{align*}

我试图这样做,但我不确定是什么问题

^\\begin{[^}]*}$

\begin{开始,多次关注anything that's not },然后关注}

同样的事情是\end{?},但如果可能,我希望它在单个正则表达式中完成。

3 个答案:

答案 0 :(得分:3)

我认为下面的正则表达式就是你所需要的。

\\(begin|end){[a-zA-Z0-9*]+}

答案 1 :(得分:3)

你的正则表达式:

\\(begin|end){.*?}

.*会在{ }之间抓取任何内容,?方式会在第一个}到来时停止。

答案 2 :(得分:0)

{}是用于表达重复的特殊字符,因此您也需要转义它们。

^\\begin\{[^}]*\}$