Java RegEx找不到匹配错误 [英] Java RegEx no match found error

查看:92
本文介绍了Java RegEx找不到匹配错误的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

以下正则表达式给了我 java.lang.IllegalStateException:找不到匹配项错误

Following regex giving me java.lang.IllegalStateException: No match found error

String requestpattern = "^[A-Za-z]+ \\/+(\\w+)";
Pattern p = Pattern.compile(requestpattern);
Matcher matcher = p.matcher(requeststring);
return matcher.group(1);

其中请求字符串为

POST //upload/sendData.htm HTTP/1.1

任何帮助将不胜感激.

推荐答案

未尝试匹配.在调用 group()之前,先调用 find().

No match has been attempted. Call find() before calling group().

public static void main(String[] args) {
    String requeststring = "POST //upload/sendData.htm HTTP/1.1";
    String requestpattern = "^[A-Za-z]+ \\/+(\\w+)";
    Pattern p = Pattern.compile(requestpattern);
    Matcher matcher = p.matcher(requeststring);
    System.out.println(matcher.find());
    System.out.println(matcher.group(1));
}

输出:

true
upload

这篇关于Java RegEx找不到匹配错误的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆