【python】有道云笔记/语雀/typora 数学公式转换
2020-06-17 本文已影响0人
我写的BUG代码少
【背景】从有道云笔记迁移笔记到语雀/typora,但这几家的数学公式的代码不一样。
公式形式 | 有道云 | 语雀 | typora |
---|---|---|---|
短公式 | '$formula$' | $formula$ | $formula$ |
长公式 | ```math formula ``` | ```math formula ``` 和 $$formula$$ | $$formula$$ |
【实现】
- '$C_{1}$' 变成 $C_{1}$
- ```math
\begin{array}{r}
a_{1}{(2)}=g\left(\Theta_{10}{(1)} x_{0}+\Theta_{11}^{(1)} x_{1}+\Theta_{12}^{(1)} x_{2}+\Theta_{13}^{(1)} x_{3}\right) \
a_{2}{(2)}=g\left(\Theta_{20}{(1)} x_{0}+\Theta_{21}^{(1)} x_{1}+\Theta_{22}^{(1)} x_{2}+\Theta_{23}^{(1)} x_{3}\right) \
a_{3}{(2)}=g\left(\Theta_{30}{(1)} x_{0}+\Theta_{31}^{(1)} x_{1}+\Theta_{32}^{(1)} x_{2}+\Theta_{33}^{(1)} x_{3}\right) \
h_{\Theta}(x)=a_{1}{(3)}=g\left(\Theta_{10}{(2)} a_{0}{(2)}+\Theta_{11}{(2)} a_{1}{(2)}+\Theta_{12}{(2)} a_{2}{(2)}+\Theta_{13}{(2)} a_{3}^{(2)}\right)
\end{array}
```
变成
$$
\begin{array}{r}
a_{1}{(2)}=g\left(\Theta_{10}{(1)} x_{0}+\Theta_{11}^{(1)} x_{1}+\Theta_{12}^{(1)} x_{2}+\Theta_{13}^{(1)} x_{3}\right) \
a_{2}{(2)}=g\left(\Theta_{20}{(1)} x_{0}+\Theta_{21}^{(1)} x_{1}+\Theta_{22}^{(1)} x_{2}+\Theta_{23}^{(1)} x_{3}\right) \
a_{3}{(2)}=g\left(\Theta_{30}{(1)} x_{0}+\Theta_{31}^{(1)} x_{1}+\Theta_{32}^{(1)} x_{2}+\Theta_{33}^{(1)} x_{3}\right) \
h_{\Theta}(x)=a_{1}{(3)}=g\left(\Theta_{10}{(2)} a_{0}{(2)}+\Theta_{11}{(2)} a_{1}{(2)}+\Theta_{12}{(2)} a_{2}{(2)}+\Theta_{13}{(2)} a_{3}^{(2)}\right)
\end{array}
$$
# 有道云--->语雀/typora
import re
with open('D:\Desktop\\test.md',encoding='utf-8') as f, open('D:\Desktop\\res.md','w',encoding='utf-8') as f2:
content = f.read()
content = re.sub('```math([\s\S]*?)```',r'$$\1$$',content)
content = re.sub('([`][$])|([$][`])','$',content)
f2.write(content)