我目前有一些这样的网址:
?param=value&offset=19&size=100
或者像这样:
?offset=45&size=50¶m=lol
我想为每种情况删除“偏移量”和“值”。我正在使用正则表达式方法,但我不明白它是如何工作的......你能帮我吗?我还想同时获得偏移量和大小的值。
这是我的工作...
\(?|&)offset=([0-9])[*]&size=([0-9])[*]\
但它根本不起作用!
谢谢。
我目前有一些这样的网址:
?param=value&offset=19&size=100
或者像这样:
?offset=45&size=50¶m=lol
我想为每种情况删除“偏移量”和“值”。我正在使用正则表达式方法,但我不明白它是如何工作的......你能帮我吗?我还想同时获得偏移量和大小的值。
这是我的工作...
\(?|&)offset=([0-9])[*]&size=([0-9])[*]\
但它根本不起作用!
谢谢。
假设是 Javascript 并且您只想删除偏移参数:
str.replace(\offset=[0-9]*&?\,"")
对于 Java:
str=str.replaceAll("offset=[0-9]*&?","");
//to remove & and ? at the end in some cases
if (str.endsWith("?") || str.endsWith("&"))
str=str.substring(0,str.length()-1);
没有正则表达式。
String queryString ="param=value&offset=19&size=100";
String[] splitters = queryString.split("&");
for (String str : splitters) {
if (str.startsWith("offset")) {
String offset = str.substring(str.indexOf('=') + 1);//like wise size also
System.out.println(offset); //prints 19
}
}
如果您需要为此使用正则表达式,请在 java 中尝试使用此字符串作为正则表达式(替换为空):
"(?>(?<=\\?)|&)(?>value|offset)=.*?(?>(?=&)|$)"
它将删除 URL 中名为“offset”或“value”的任何参数。它还将为 URL 中的其他参数保留任何必需的参数标记。