我需要匹配一行字符串里面所有的 ${} 占位符,使用的正则表达式为
\$\{(.*?)\}
测试字符串为:
hello, ${name}. Your level is ${level}
我用 OSChina 的在线正则表达式测试工具 http://tool.oschina.net/regex/ 进行测试,可以正确匹配到两个占位符。
但是我在 Java 里面就不能匹配到。
Pattern pattern = Pattern.compile("\\$\\{(.*?)\\}");
String test = "hello, ${name}. Your level is ${level}";
Matcher matcher = pattern.matcher(test);
System.out.println(matcher.matches()); // 输出 false
求教这是怎么回事~~懵逼了一早上