java - 替换查询字符串中的设计模式

标签 java regex query-string removeall

我目前有一些像这样的网址:

?param=value&offset=19&size=100

或者像这样:

?offset=45&size=50&param=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);

关于java - 替换查询字符串中的设计模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17542598/

相关文章:

java - 在java中可以用静态内存分配和动态内存分配来创建对象吗?

regex - 匹配除变量字符串之外的所有内容

java - 为什么 jackson-jr 无法检测到重复的 JSON 键?

regex - 如何使用正则表达式和R正确编辑字符串?

java - 使用正则表达式替换字符串结尾

internet-explorer - 从带有查询字符串的 URL 缓存

go - 查询字符串运算符

c# - 如何使用模型刷新 View

java - 变量末尾的 $ 有特殊意义吗?

java - 到达数组末尾所需的最少跳转 - 获取索引位置