如何将字符串拆分为两部分

时间:2015-03-26 14:48:42

标签: java

我从数据库中检索字符串并存入到for循环内的String变量中。我检索的几个字符串的形式为:

https://www.ppltalent.com/test/en/soln-computers-ltd

很少有

的形式

https://www.ppltalent.com/test/ja/aman-computers-ltd

我希望将字符串分成两个子串,即 https://www.ppltalent.com/test/en/soln-computers-ltd https://www.ppltalent.com/test/en/soln-computers-ltd

如果我只有/en,那么很容易分开。

String[] parts = stringPart.split("/en");
System.out.println("Divided String  : "+ parts[1]);

但在许多字符串中,它有/jr/ch等。

那么如何将它们分成两个子字符串呢?

2 个答案:

答案 0 :(得分:5)

  • 您或许可以使用/en/ja都在/test/之前的事实。那么,像indexOf("/test/")然后substring

  • 在您的示例中,您似乎对最后一部分感兴趣,例如可以通过lastIndexOf('/')检索。

  • 或者,使用环游可以做到

    String s1 = "https://www.ppltalent.com/test/en/soln-computers-ltd";
    
    String[] parts = s1.split("(?<=/test/../)");
    System.out.println(parts[0]);  // https://www.ppltalent.com/test/er/
    System.out.println(parts[1]);  // soln-computers-ltd
    

答案 1 :(得分:-1)

在最后一个/

上拆分
String fullUrl = "https:////www.ppltalent.com//test//en//soln-computers-ltd";
String baseUrl = fullUrl.substring(0, fullUrl.lastIndexOf("//"));
String manufacturer = fullUrl.subString(fullUrl.lastIndexOf("//"));