84669 人学习
152542 人学习
20005 人学习
5487 人学习
7821 人学习
359900 人学习
3350 人学习
180660 人学习
48569 人学习
18603 人学习
40936 人学习
1549 人学习
1183 人学习
32909 人学习
@Test public void test() { Pattern pattern = Pattern.compile("\"(\\w+)\":\"(\\w+)\""); Matcher m = pattern.matcher("\"KEY\":\"VAL\""); m.group(1); }
请问这个正则为什么无法匹配. 脑子进猪油了,现在
欢迎选择我的课程,让我们一起见证您的进步~~
你的表达式没什么问题,只是你得先调m.find()再取m.group(1)
m.find()
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)); }
你的表达式没什么问题,只是你得先调
m.find()
再取m.group(1)