我有String str = "$$\\frac{6}{8}$$";
我希望匹配字符串使用以'$$'开头并以'$$'结尾
如何为此编写正则表达式?
答案 0 :(得分:1)
使用此正则表达式字符串:
"^$$.*$$$"
^
将表达式锚定到匹配的字符串的开头,最后$
将其锚定到结尾。所有其他$
个字符都是字面意思。
答案 1 :(得分:1)
尝试使用正则表达式:
^\$\$.*\$\$$
在Java中将是:
^\\$\\$.*\\$\\$$
$
是用作结束锚的正则表达式元字符。要表示文字$
,您需要使用反斜杠\
来转义它。
在Java中\
是String中的转义字符,也是正则表达式中的转义字符。因此,要使\
到达正则表达式引擎,您需要在字符串中包含\\
。
答案 2 :(得分:0)
你可能想要这样的东西:
final String str = "$$\\frac{6}{8}$$";
final String latex = "A display math formula " + str + " and once again " + str + " and another one " + "$$42.$$";
final Pattern pattern = Pattern.compile("\\$\\$([^$]|\\$[^$])+\\$\\$");
final Matcher m = pattern.matcher(latex);
while (m.find()) {
System.out.println(m.group());
}