@Test
public void test() {
Pattern pattern = Pattern.compile("\"(\\w+)\":\"(\\w+)\"");
Matcher m = pattern.matcher("\"KEY\":\"VAL\"");
m.group(1);
}
请问这个正则为什么无法匹配. 脑子进猪油了,现在
@Test
public void test() {
Pattern pattern = Pattern.compile("\"(\\w+)\":\"(\\w+)\"");
Matcher m = pattern.matcher("\"KEY\":\"VAL\"");
m.group(1);
}
请问这个正则为什么无法匹配. 脑子进猪油了,现在
因为'\'和'"'(双引号)是需要要转义符的'\'的.像下面写就能行了.
Pattern pattern = Pattern.compile("\\\"(\\w+)\\\":\\\"(\\w+)\\\"");
Matcher m = pattern.matcher("\"KEY\":\"VAL\"");
//m.group(1);
if(m.find()){
System.out.println(m.group(1));
}
15 回答8.4k 阅读
8 回答6.2k 阅读
1 回答4.1k 阅读✓ 已解决
3 回答2.2k 阅读✓ 已解决
2 回答3.1k 阅读
2 回答3.8k 阅读
3 回答1.7k 阅读✓ 已解决
你的表达式没什么问题,只是你得先调
m.find()
再取m.group(1)