[英]Removing a substring from a string
我有一個非常簡單的問題,只是無法讓我的代碼在Java中工作。 我想返回一個指示文件路徑的字符串,但是如果存在則提取該路徑的特定部分。
因此,我的輸入可能是“ c:/lotus/notes/data/directory/mydatabase.nsf”,而我只想返回“ directory / mydatabase.nsf”。 有時,提供的路徑將已經忽略了“ c:/ lotus / notes / data /”,因為它是在服務器而不是本地訪問的。
public String getDataPath ( String path ) {
int pathStart;
boolean pathContains;
String lowerPath;
lowerPath = path.toLowerCase();
pathStart = lowerPath.indexOf("c:/lotus/notes/data");
if ( pathStart >= 0) {
// 20 characters in "c:/lotus/notes/data/"
return path.substring(19);
}
pathContains = lowerPath.contains("lotus/notes/data");
if ( pathContains ) {
// 20 characters in "c:/lotus/notes/data/"
return path.substring(19);
}
return path;
}
這很簡單,但是以某種方式,我做不到。 我的兩個if都不認為是真的。
您可以簡單地執行path.replaceAll("c:/lotus/notes/data", "")
。 如果字符串中包含前導路徑名,它將刪除該字符串,否則該字符串將不會更改。
把事情簡單化:
path.replace("c:/lotus/notes/data", "");
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.