字符串
\frac{0+\frac{1}{2}+0}{1+\frac{4}{5}+1}
如何使用正则表达式分别获取两个字符串:
0+\frac{1}{2}+0
1+\frac{4}{5}+1
\frac{}{}
可以无限嵌套。
也要能够匹配:
\frac{1}{2}
字符串
\frac{0+\frac{1}{2}+0}{1+\frac{4}{5}+1}
如何使用正则表达式分别获取两个字符串:
0+\frac{1}{2}+0
1+\frac{4}{5}+1
\frac{}{}
可以无限嵌套。
也要能够匹配:
\frac{1}{2}
/^\\frac{(.*\\frac{.*}{.*}.*)*}{(.*\\frac{.*}{.*}.*)*}|\\frac{(.*\\frac{.*}{.*}.*)*}{(.*)}|\\frac{(.*)}{(.*)}$/
这个勉强可以,但是需要在程序中加一点判断,看看具体是哪两个分组匹配到的。
一开始的想法是给分组里面的
\\frac{...}{...}
用非贪婪模式,但仍然是不行的,因为它的后面没有“贪婪”的部分来“抢夺”它,所以它的匹配结果实际上还是和贪婪一样的。实验了一下确实是这样。后来想用
逆向否定环视
来实现,但可惜JS不支持,所以没办法,最后只能想到用这种“笨”办法来做了。不知道有没有大神能完美地搞定这个问题。