好吧,我有这个字符串
String line = "6!.242.88.10 - - [07/Mar/2004:16:05:49 -0800] \"GET
/twiki/bin/edit/Main/Double_bounce_sender?
topicparent=Main.ConfigurationVariables HTTP/1.1\" 401 12846";
我也有这个java正则表达式
Pattern c = Pattern.compile("(\\s+\\/+)(?<=\\/).*(?=)");
任何人都可以帮助我使用正则表达式来提取这个/ twiki / bin / edit / Main / Double_bounce_sender吗?
在最后可能有问号的情况下,或者可能有一个空格而没有与行的其余部分匹配
答案 0 :(得分:0)
如果您想要一个班轮,可以尝试使用String.replaceAll
:
String match = line.replaceAll(".*\\s+(/[^?\\s]*)(?:\\?|\\s).*", "$1");