我有一个字符串,我试图拆分然后用 MathML 标签包装。目标是为方程提供一个 MathML(可能是 MathJax)渲染输出。我遇到的问题是将 MathML 标签与不同的子字符串匹配。
例如:
str = x + 2;
newStr = str.split(''); //returns [x,+,2]
我可以像这样循环遍历数组:
for (i = 0;i < newStr.length; i++) {
write('<mn>' + newStr[i] + '</mn>')
但这仅适用于单个 MathML 标记。如何将每个子字符串映射到一个标签,用该标签包装它(最好根据变量引用标签),然后关闭标签(在使用多元素 MathML 时发挥作用<msup>
)。
更新
例如,这就是我想要制作的:
输入:x + 2
输出:<mi>x</mi><mo>+</mo><mn>2</mn>
我整天都在与这个问题作斗争。有任何想法吗?