正则表达式在JavaScript中检测textarea中的MathML
我正在使用并尝试创建自己版本的。我有一个正则表达式在JavaScript中检测textarea中的MathML,javascript,regex,pattern-matching,mathml,Javascript,Regex,Pattern Matching,Mathml,我正在使用并尝试创建自己版本的。我有一个,我在上面监听更改,当有更改时,我想查看中的值,并确定它是否以MathML的形式存在 所以我只需要一种非常粗糙的方法来检测中的值是否为MathML;它不一定是完美的。我想我可以在更改时运行正则表达式,并查找以下任何标记: <mfrac> <msup> <msub> <msqrt> <mroot> <mfenced> <msubsup> <munderover>
,我在上面监听更改,当有更改时,我想查看
中的值,并确定它是否以MathML的形式存在
所以我只需要一种非常粗糙的方法来检测
中的值是否为MathML;它不一定是完美的。我想我可以在
更改时运行正则表达式,并查找以下任何标记:
<mfrac>
<msup>
<msub>
<msqrt>
<mroot>
<mfenced>
<msubsup>
<munderover>
<munder>
<mtable>
<mtr>
<mtd>
<mrow>
<mi>
<mo>
我需要从
中提取字符串,并查看这些标记中是否有任何一个是子字符串。我怎么写这个正则表达式
/<m(?:frac|sup|sub|sqrt|root|fenced|subsup|underover|under|table|tr|td|row|i|o)\b/
不保证匹配整个标记,但将确保标记开始后有一个
编辑:
。。。什么是/]*>/
正则表达式必须位于/…/
内,就像字符串必须位于引号内一样,因为JavaScript解释器是通过字符串、数字或任何其他类型的标记来告诉正则表达式文本的
我知道中间的标记与以字母m
开头的任何标记匹配,但是你能解释一下该正则表达式的开头和结尾吗?比如说,什么是/]*>/
?@Hristo编辑了这篇文章并给出了解释。
/<m(?:frac|sup|sub|sqrt|root|fenced|subsup|underover|under|table|tr|td|row|i|o)\b[^>]*>/