如何在Java中更改字符串前缀部分
我在Java中有一个如何在Java中更改字符串前缀部分,java,string,Java,String,我在Java中有一个字符串,路径如下:E:\HTML\project\img\image.jpg 我想将其更改为\img\image.jpg 我该怎么做呢?不确定您是否在问这个问题,但如果您只是想将字符串变量更改为其他变量,则非常简单: String path = "E:\HTML\project\img\image.jpg"; path = "\img\image.jpg"; 除了有一件事需要更改之外,您需要使用如下转义字符: path = "\\img\\image.jpg"; 或者简
字符串
,路径如下:E:\HTML\project\img\image.jpg
我想将其更改为\img\image.jpg
我该怎么做呢?不确定您是否在问这个问题,但如果您只是想将字符串变量更改为其他变量,则非常简单:
String path = "E:\HTML\project\img\image.jpg";
path = "\img\image.jpg";
除了有一件事需要更改之外,您需要使用如下转义字符:
path = "\\img\\image.jpg";
或者简单地使用另一个符号来声明路径/
如果我是你,我会把它改成:
String path = "E:/HTML/project/img/image.jpg";
path = "/img/image.jpg";
你也可以试试这个
String string = "E:/HTML/project/img/image.jpg.";
path = "/img/image.jpg";
String subString = string.substring(path.length()+1, string.length()-1);
System.out.println(subString);
或
这可能有点复杂,但效果很好。我使用Apache Commons中的
String path = "E:/HTML/project/img/image.jpg";
path = path.substring(StringUtils.ordinalIndexOf(path,'/',3));
您可以尝试以下代码:
import java.util.StringTokenizer;
public class App {
public static void main(String[] args) {
String str = "E:\\HTML\\project\\img\\image.jpg";
StringTokenizer st = new StringTokenizer(str,"\\");
System.out.println("---- Split by \\ ------");
while (st.hasMoreElements()) {
String s =st.nextElement().toString();
if(s.equals("img"))
str = s;
if(s.equals("image.jpg"))
str += "\\"+s;
}
System.out.println(str);
}
}
使用子串函数子串(15,29);它将\img\image.jpgTake
\img
作为常量字符串,并通过使用s.substring(s.lastIndexOf(“\\”),s.length())
获取图像名称。这也适用于动态路径。我想知道,您是否仅尝试更改此特定路径或通用模式的路径(您刚刚给出了此类模式的示例)。你应该在问题中详细说明。
String path = "E:/HTML/project/img/image.jpg";
path = path.substring(StringUtils.ordinalIndexOf(path,'/',3));
import java.util.StringTokenizer;
public class App {
public static void main(String[] args) {
String str = "E:\\HTML\\project\\img\\image.jpg";
StringTokenizer st = new StringTokenizer(str,"\\");
System.out.println("---- Split by \\ ------");
while (st.hasMoreElements()) {
String s =st.nextElement().toString();
if(s.equals("img"))
str = s;
if(s.equals("image.jpg"))
str += "\\"+s;
}
System.out.println(str);
}
}
String s = "E:\\HTML\\project\\img\\image.jpg";
String newString = s.replaceAll("(.*?)(\\\\img.*)", "$2");
System.out.println(newString);
StringBuffer str = new StringBuffer("E:\\HTML\\project\\img\\image.jpg");
int first = str.lastIndexOf("\\");
int second = str.lastIndexOf("\\", first-1);
System.out.println(str.substring(second));