采取URL http://www.abc.com/alpha/beta/33445566778899/gamma/delta
通过正则表达式
在Java中从URL中提取号码,我需要返回数字33445566778899
(正斜杠去除,数字长度是可变的,但数字10 & 20之间)
够简单了(或者我以为)除了我已经尝试过的一切似乎没有工作,但为什么?
Pattern pattern = Pattern.compile("\\/([0-9])\\d{10,20}\\/");
Matcher matcher = pattern.matcher(fullUrl);
if (matcher.find()) {
return matcher.group(1);
}
不应该在数字组后面加一个'/'(我注意到你在编辑之前添加了它)?否则,它会在'http:// www.abc.com/alpha/beta/33445566778899xyz/gamma/delta'中找到该数字,这似乎并不是预期的。 – Gorkk
@Gorkk是的,为了完整它应该在那里。谢谢。 – Bohemian