新的java正则表达式,如何抓住这部分字符串

mrb*_*lah 0 java regex netbeans

我有一个看起来像这样的字符串:

http://www.example.com/index.do/blah/1_44/asdf/asdf/asdf
http://www.example.com/index.do/blah/1_44_2342/asdf/asdf/asdf
Run Code Online (Sandbox Code Playgroud)

我需要从上面获取值44,当然'44'可以是任何数字.数字'44'始终以a为前缀_,之后可能是另一个_/.

我不知道java正则表达式API,所以作为指导将不胜感激!

cle*_*tus 5

它主要是您感兴趣的课程PatternMatcher课程.

String url = "http://www.example.com/index.do/blah/1_44/asdf/asdf/asdf";
Pattern p = Pattern.compile("_(\\d+)");
Matcher m = p.matcher(url);
if (m.find()) {
  int number = Integer.valueOf(m.group(1));
}
Run Code Online (Sandbox Code Playgroud)

此模式在第一个模式之后找到一个或多个数字的第一个序列_.