这不是最优雅的解决方案,但是可以按预期工作:

private String removeParameter(String string, final String parameterName) {

List list = newArrayList(string.split("&"));

Collection filtered = Collections2.filter(list, new Predicate() {

public boolean apply(String s) {

return !s.startsWith(parameterName + "=");

}

});

return Joiner.on("&").join(filtered);

}

更新

处理多个参数:

@Test

public void removesMultipleParametersFromQuery() throws Exception {

String result = removeParameters("foo=fooValue&zee=lalal&bar=barValue&phleem=phleemValue", "foo", "bar");

assertThat(result, is("zee=lalal&phleem=phleemValue"));

}

private String removeParameters(String query, final String...parameterNames) {

List list = newArrayList(query.split("&"));

return Joiner.on("&").join(filter(list, startsWithAnyOf(parameterNames)));

}

private Predicate startsWithAnyOf(final String[] parameterNames) {

return new Predicate() {

public boolean apply(String s) {

return !Iterables.any(newArrayList(parameterNames), isPrefixOf(s));

}

};

}

private Predicate isPrefixOf(final String string){

return new Predicate() {

public boolean apply(String candidate) {

return string.startsWith(candidate);

}

};

}

java 从_java-从查询字符串中过滤参数(使用番石榴?...相关推荐

  1. Laravel同时接收路由参数和查询字符串中的参数

    Laravel捕捉路由参数 Laravel允许在controller方法中捕捉路由里定义的参数,如下所示: 路由中定义参数: Route::get('post/{id}', 'PostControll ...

  2. Java实现替换多个字符串中的参数

    Java根据id从数据库查询到SQL,SQL中需要传参的地方用%s表示, 例如 String sql = "SELECT * FROM a WHERE a.id ='%s' AND a.na ...

  3. 查询字符串中连续出现的字符

    根据用户需求需要查询字符串中连续出现的字符 如'mn,asdfs,opq,dfasf,abc,asdlfj,defg' 'DF,RST',要求找出两个字符串中连续出现的字符 这里两个字符串数据相当于表 ...

  4. 查询字符串中字母出现的个数

    /*查询字符串中字母出现的个数*/             string str = " Welcom Hello World";             Dictionary&l ...

  5. 查询字符串中不含重复的最长子串

    /*** 查询字符串中不含重复的最长子串* 思路:* 1.从大到小获取字符串子串.* 2.遍历每个子串中是否有重复.* 3.查询到符合子串即可返回.*/ public class Demo2_16_0 ...

  6. 面试题:查询字符串中出现次数最多的字符以及出现次数

    查询字符串中出现次数最多的字符以及出现次数 最优解: // 查询字符串出现最多的次数var randomStr = "sssfgtdaddddddddadadadadadddddfssddf ...

  7. 寻找热门查询,300万个查询字符串中统计最热门的10个查询

    寻找热门查询,300万个查询字符串中统计最热门的10个查询 #include #include #include struct QueryInfo{ string s; int times; Quer ...

  8. 字符串url获取参数_如何从URL查询字符串获取示例参数或将其附加到URL查询字符串(示例)?...

    字符串url获取参数 让我们剖析几个简单的用例,并查看视图参数的工作原理(视图参数名称不是强制性的,以匹配通过URL查询字符串传递的请求参数,但在本文中,我们将重点讨论这种情况): 情况1 在inde ...

  9. matlab 将图形另存时,在文件名字符串中添加参数,总是保存出错,无效文件名

    将图形另存时,在文件名字符串中添加参数,总是保存出错,解决方式如下: 注意:我尝试过 string(1) char(1) 等都不可以,提示无效文件名. filename = ['Point cloud ...

  10. java 字符码查询_Java URL查询字符串参数的编码

    URLEncoder应该是走的路.您只需要记住,只编码单个查询字符串参数名称和/或值,而不是整个URL,确保不要查询字符串参数分隔符字符&也不是参数名称 – 值分隔符字符=. String q ...

最新文章

  1. php 读取stdclass,json - 在php中读取stdclass的问题?
  2. BizTalk学习笔记系列之二:实例说明如何使用BizTalk
  3. 河南大学生带着捡来的妹妹求学12年
  4. Crash/Instance Recovery与Media Recovery的本质区别
  5. Python调用Matlab教程
  6. 火山PC模拟鼠标操作
  7. html颜色代码错误,HTML颜色代码表
  8. 用U盘安装Windows server 2012 R2
  9. 蓝牙5.3 Core Spec演进与功能变化
  10. 企查查网站信息爬取1.0版
  11. [NOIP模拟测试34]反思+题解
  12. PostgreSQL11 | pgadmin4基本使用
  13. Jenkins流水线部署java项目
  14. 逆向分析:还原 App protobuf 协议加密
  15. Q上多项式可约性深化定理
  16. YTU OJ 2458: 换啤酒
  17. jQuery带缩略图轮播效果图片切换带缩略图
  18. STP客户分类(Python)
  19. 记账本系统的功能结构图
  20. ASP.NET-酒店管理系统

热门文章

  1. 苹果怎么加辅助功能的计算机,Mac辅助功能 - 基本操作以及设置 - Macbook Pro用户手册...
  2. OpenCV-图像处理(06、调整图像亮度与对比度)
  3. python storm连接mysql_python ORM storm中的复合外键引用
  4. 在更新查询中可以使用计算机功能,ACCESS试题1.doc
  5. JAVA怎么接收长字符串_【Java】Java中常用的String方法
  6. 已知树的前序遍历和中序遍历,求后序遍历的方法(转)
  7. tensorflow keras 搭建相机位姿估计网络--例
  8. linux服务器邮局,linux系统下安装postfix邮局服务器
  9. java为什么要连接Mysql_为什么要启动mysql workbech,java才能连接mysql数据库呢?
  10. 反地理编码 高德地图_由中文地址返回点位坐标-地理编码脚本分享