我需要匹配一行字符串里面所有的 ${} 占位符,使用的正则表达式为
\$\{(.*?)\}
测试字符串为:
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
求教这是怎么回事~~懵逼了一早上
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.