Java 如何从给定字符串中提取文本?

Java 如何从给定字符串中提取文本?,java,Java,我想从给定的字符串中提取一个特定的图像路径字符串 字符串是http:\localhost:9090\SpringMVC\images\integration icon.png 现在我只想得到像这样的图像之后的路径 \images\integration-icon.png 我试过这个 Pattern pattern = Pattern.compile("SpringMVC"); Matcher matcher = pattern.matcher(str); System.out.println(

我想从给定的字符串中提取一个特定的图像路径字符串

字符串是http:\localhost:9090\SpringMVC\images\integration icon.png

现在我只想得到像这样的图像之后的路径

\images\integration-icon.png
我试过这个

Pattern pattern = Pattern.compile("SpringMVC");
Matcher matcher = pattern.matcher(str);
System.out.println("Checking");
if (matcher.find()) {
    System.out.println(matcher.group(1));
}
我怎样才能得到它

String filename = filepath.substring(filepath.lastIndexOf("\\") + 1);
或者(没有尝试过,看起来有点奇怪)


ZenoBusinessStore
必须是项目的名称,该名称为常量。 现在把绳子分开

String s = "http:\localhost:9090\ZenoBusinessStore\images\integration-icon.png";
String ary = s.split("ZenoBusinessStore");
现在,数组的第二个元素是图像路径

 System.out.println(ary[1]);

使用“\\”。这是因为反斜杠用于转义序列,如“\n”。使用单个\编译器没有办法知道。

pertical是什么意思?如果您使用java 7,请注意Path类为什么给我-2?不起作用,您将得到错误-无效的转义序列(有效的是\b\t\n\f\r\“\)。使用转义序列。是否确定?因为我使用了有效的转义序列并在编译器上运行它。如果不起作用,您将得到错误-无效的转义序列(有效的转义序列是\b\t\n\f\r\“\”\)。使用转义序列。
String text = "http:\localhost:9090\SpringMVC\images\integration-icon.png"
String subText = text.subString(text.indexOf("\images"), text.length());
System.out.println(subText);
String in = "http:\\localhost:9090\\ZenoBusinessStore\\images\\integration-icon.png";
String op = in.replace("http:\\localhost:9090\\ZenoBusinessStore", "");
System.out.println(op);
String s = "http:\localhost:9090\ZenoBusinessStore\images\integration-icon.png";
String ary = s.split("ZenoBusinessStore");
 System.out.println(ary[1]);