我试图匹配数学方程式中包含的所有下划线(由数学分隔符包围)$
,并在它们周围添加空格。
例如,在数学等式中:
$(x_0, x_1, \dots, x_n)$
我希望最终的结果是
$(x _ 0, x _ 1, \dots, x _ n)$
到目前为止,我已经想出了一个正则表达式
\$([^\$]*)_([^\$]*)\$
并尝试用 替换$$1 _ $2$
。
这种方法确实可行,但只能匹配单个下划线。在上面的例子中,我得到了
$(x_0, x_1, \dots, x _ n)$
有没有办法匹配每一个_
并一次性替换它们_
?如果这在正则表达式中不可能实现,我想我必须寻找其他方法。
PS. 我之所以需要这个,是因为 markdown 解析器有时会匹配_
强调内容并破坏数学方程的格式。如果有人知道一个有效的解决方法(除了使用\_
- 我使用 obsidian,这个方法会破坏那里的方程),那也很好。