[英]Need to Trim Java String
我需要幫助修剪字符串網址。
假設字符串是http://myurl.com/users/232222232/pageid
我想要的是/232222232/pageid
現在'myurl.com'可以改變,但/users/
將始終是相同的。
我建議你使用substring
和indexOf("/users/")
。
String url = "http://myurl.com/users/232222232/pageid";
String lastPart = url.substring(url.indexOf("/users/") + 6);
System.out.println(lastPart); // prints "/232222232/pageid"
一個稍微復雜的變體是讓URL
類為你解析url:
URL url = new URL("http://myurl.com/users/232222232/pageid");
String lastPart = url.getPath().substring(6);
System.out.println(lastPart); // prints "/232222232/pageid"
第三種方法,使用正則表達式:
String url = "http://myurl.com/users/232222232/pageid";
String lastPart = url.replaceAll(".*/users", "");
System.out.println(lastPart); // prints "/232222232/pageid"
String rest = url.substring(url.indexOf("/users/") + 6);
string.replaceAll(".*/users(/.*/.*)", "$1");
您可以使用split(String regex,int limit)
,它將在regex
中圍繞模式分割字符串最多limit
時間,因此......
String url="http://myurl.com/users/232222232/pageid";
String[] parts=url.split("/users",1);
//parts={"http://myurl.com","/232222232/pageid"}
String rest=parts[1];
//rest="/232222232/pageid"
限制是為了防止像"http://myurl.com/users/232222232/users/pageid"
這樣的字符串給出答案,如"/232222232"
。
您可以使用String.indexOf()
和String.substring()
來實現此目的:
String pattern = "/users/";
String url = "http://myurl.com/users/232222232/pageid";
System.out.println(url.substring(url.indexOf(pattern)+pattern.length()-1);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.