-2

我有一个包含这个的字符串:

D:\ptc\Windchill_10.0\Windchill\wtCustom\wt\lifecycle\StateRB.rbInfo.

我只想得到这部分:

wt\lifecycle\StateRB

我怎样才能做到这一点?

4

3 回答 3

0

您可以将字符串 tokeniezer 与 \ delimiter 一起使用,并仅获取最后三个字符串标记。我希望上述路径将始终保持不变。

于 2013-08-13T06:03:06.827 回答
0

http://www.tutorialspoint.com/java/java_string_substring.htm

检查上面的链接

例子 :

  String Str = new String("Welcome to Tutorialspoint.com");
  System.out.print("Return Value :" );
  System.out.println(Str.substring(10) );

  System.out.print("Return Value :" );
  System.out.println(Str.substring(10, 15) );
于 2013-08-13T06:03:14.593 回答
0

您可以简单地将整个路径洒到零件上,然后得到您想要的零件。

String path = "D:\ptc\Windchill_10.0\Windchill\wtCustom\wt\lifecycle\StateRB.rbInfo";
String[] parts = path.split("\\");
parts = Arrays.copyOfRange(parts, parts.length-3, parts.length);

或者您可以使用循环遍历字符串(这似乎更好)

int index = 0, i = 0;
Stack<String> al = new Stack<String>();
while((index = path.lastIndexOf()))!=-1 && i < 3) {
    al.push((path = path.substring(index)));
    i++;
}
String[] parts = (String[])al.toArray(); //if you don't have array elements
                                         // in correct order, you can use 
                                         // Collections.reverse with Arrays.asList 
                                         // applied on array
于 2013-08-13T06:04:44.850 回答