【问题标题】:how to extract first substring i a string containg /? [duplicate]如何提取包含/的字符串的第一个子字符串? [复制]
【发布时间】:2014-10-30 15:00:56
【问题描述】:

我想从/ccadmin/hrp/filelist中提取ccadmin

我知道我可以使用

String uri = "/ccadmin/hrp/filelist";
String commandKey = uri.substring(uri.lastIndexOf("/") + 1, uri.length()); 

但是如何提取第一个子字符串ccadmin

【问题讨论】:

标签: java substring


【解决方案1】:

如果我理解你的问题,那么你可以使用类似的东西,

String uri = "/ccadmin/hrp/filelist";
String first = uri.substring(1, uri.indexOf("/", 2));
System.out.println(first);

输出是

ccadmin

【讨论】:

    【解决方案2】:

    用 / 字符分割字符串:

    String[] parts = uri.split("/");
    

    parts[1] 是你想要的。

    【讨论】:

    • 这有做一堆不必要的工作的不幸副作用。
    • @pamphlet,你能解释一下你的意思吗?
    • @pamphlet 是的,最简单的解决方案通常不是最有效的解决方案
    • 当然。这将拆分整个 uri,创建多个字符串。其中只需要一个。所有其他字符串的生成都是浪费。 Elliott 的解决方案不存在这个问题。
    • @RockOnRockOut 阿门。
    【解决方案3】:

    你可以用它来分割你的字符串,然后得到你需要的 uri 部分:

    String uri = "/s/d/f";
            String[] parts = uri.split("/");
            String item = parts[1];
            System.out.println( item );
    

    【讨论】:

      猜你喜欢
      • 2018-04-23
      • 2013-12-17
      • 2010-12-28
      • 2018-05-13
      • 2016-08-07
      • 2011-03-29
      • 2017-11-25
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多