从 JAVA 中的字符串(从 url 类型更改)中删除尾部斜杠

新手上路,请多包涵

我想从 Java 中的字符串中删除尾部斜杠。

我想检查字符串是否以 url 结尾,如果是,我想将其删除。

这是我所拥有的:

 String s = "http://almaden.ibm.com/";

s= s.replaceAll("/","");

和这个:

 String s = "http://almaden.ibm.com/";
length  =  s.length();
--length;
Char buff = s.charAt((length);
if(buff == '/')
{
     LOGGER.info("ends with trailing slash");
/*how to remove?*/
}
else  LOGGER.info("Doesnt end with trailing slash");

但两者都不起作用。

原文由 Eswar Rajesh Pinapala 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 658
2 个回答

您可以使用 Apache Commons StringUtils 实现此目的,如下所示:

 String s = "http://almaden.ibm.com/";
StringUtils.removeEnd(s, "/")

原文由 Babatunde Adeyemi 发布,翻译遵循 CC BY-SA 4.0 许可协议

有两种选择:使用模式匹配(稍慢):

 s = s.replaceAll("/$", "");

或者:

 s = s.replaceAll("/\\z", "");

并使用 if 语句(稍微快一点):

 if (s.endsWith("/")) {
    s = s.substring(0, s.length() - 1);
}

或者(有点难看):

 s = s.substring(0, s.length() - (s.endsWith("/") ? 1 : 0));

请注意,您需要使用 s = s... ,因为字符串是不可变的。

原文由 Thomas Mueller 发布,翻译遵循 CC BY-SA 2.5 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题