1

我正在使用 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 有类似的东西来替换美元符号之间的文本

4

2 回答 2

4

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

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

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

String.replaceAll

Matcher.replaceAll

于 2013-08-23T08:06:58.800 回答
1

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

"\\$([^\\$]*)\\$"
于 2013-08-23T08:03:40.913 回答