2015-04-27 4 views

ответ

1
String x = "http://www.facebook.com/post/ll.html"; 
    String[] splits = x.split("/"); 

    String last = splits[splits.length - 1]; 
    String first = x.substring(0, x.length() - last.length()); 

    System.out.println(last); // 11.html 
    System.out.println(first); // http://www.facebook.com/post/ 
3

Один из способов сделать это:

String myStr = "http://www.facebook.com/post/ll.html"; 
String strEnd = myStr.substring(myStr.lastIndexOf('/')+1); 

У strEnd будет строка, которую вы желаете.

+0

Это сработало ... –

0

Попробуйте это:

if (null != str && str.length() > 0) 
    { 
    int endIndex = str.lastIndexOf("/"); 
    if (endIndex != -1) 
    { 
     String firststringurl = str.substring(0, endIndex); 
     String secondstringurl = str.substring(endIndex); 
    } 
    } 
0

Я думаю, что лучший способ приблизиться к этой цели является также использовать the URL class, так как есть много подводных камней, если вы просто сделать простой строки синтаксического анализа. Для примера:

// Get ll.html 
String filePart = url.getPath().substring(url.getPath().lastIndexOf('/')+1); 

// Get /post/ 
String pathPart = url.getPath().substring(0, url.getPath().lastIndexOf('/')+1); 

// Cut off full URL at end of first /post/ 
pathPart = url.toString().substring(0, url.toString().indexOf(pathPart)+pathPart.length()); 

Это будет справиться даже с URL-адресов, как http://www.facebook.com:80/ll.html/ll.html#foo/bar?wibble=1/ll.html.

Смежные вопросы