Java - RegEx用于替换美元符号之间的文本

时间:2013-08-23 07:59:08

标签: java regex

我正在使用JAVA并希望在美元符号之间替换每个文本实例。例如:

1st equation $\frac{1}{\mu -1}\frac{2\pi }{\lambda }x$ 
2nd equation $90^{^{0}}$
3rd equation $\frac{\mu t}{2}$
4th equation $2\mu tcosr=\frac{\left ( 2n+1 \right ) \lambda}{2}$

将由此

取代
1st equation <img src="http://latex.codecogs.com/gif.latex?$\frac{1}{\mu -1}\frac{2\pi }{\lambda }x$ " border="0"/>
2nd equation <img src="http://latex.codecogs.com/gif.latex?$90^{^{0}}$" border="0"/>
3rd equation <img src="http://latex.codecogs.com/gif.latex?$\frac{\mu t}{2}$" border="0"/>
4th equation <img src="http://latex.codecogs.com/gif.latex?$2\mu tcosr=\frac{\left ( 2n+1 \right ) \lambda}{2}$" border="0"/>

我在stackoverflow.com上搜索并发现类似于C#.NET RegEx to replace text between dollar signs

的内容

2 个答案:

答案 0 :(得分:4)

我相信会是这样的......

myString.replaceAll("\\$[^$]*\\$", 
     "<img src=\"http://latex.codecogs.com/gif.latex?$0 \" border=\"0\"/>"

替换字符串中的$0应与搜索正则表达式中的捕获组匹配...

String.replaceAll

Matcher.replaceAll

答案 1 :(得分:1)

C#中使用的正则表达式与Java相同,只是您需要双重转义$

"\\$([^\\$]*)\\$"