java 如何从末尾拆分字符串
java how to split string from end
我有一个类似于 "test.test.test"...".test" 的字符串,我需要访问该字符串中的最后一个 "test" 单词。请注意,字符串中 "test" 的数量不受限制。如果 java 有一个像 php explode
函数这样的方法,那么一切都是正确的,但是......。我认为从字符串末尾拆分可以解决我的问题。
有没有办法为 split
方法指定方向?
我知道这个问题的一种解决方案可能是这样的:
String parts[] = fileName.split(".");
//for all parts, while a parts contain "." character, split a part...
但我认为这个解决方案很糟糕。
使用字符串的 lastIndexOf 方法尝试子字符串:
String str = "almas.test.tst";
System.out.println(str.substring(str.lastIndexOf(".") + 1));
Output:
tst
我想你可以使用 lastIndexOf(String str)
方法来达到这个目的。
String str = "test.test.test....test";
int pos = str.lastIndexOf("test");
String result = str.substring(pos);
我有一个类似于 "test.test.test"...".test" 的字符串,我需要访问该字符串中的最后一个 "test" 单词。请注意,字符串中 "test" 的数量不受限制。如果 java 有一个像 php explode
函数这样的方法,那么一切都是正确的,但是......。我认为从字符串末尾拆分可以解决我的问题。
有没有办法为 split
方法指定方向?
我知道这个问题的一种解决方案可能是这样的:
String parts[] = fileName.split(".");
//for all parts, while a parts contain "." character, split a part...
但我认为这个解决方案很糟糕。
使用字符串的 lastIndexOf 方法尝试子字符串:
String str = "almas.test.tst";
System.out.println(str.substring(str.lastIndexOf(".") + 1));
Output:
tst
我想你可以使用 lastIndexOf(String str)
方法来达到这个目的。
String str = "test.test.test....test";
int pos = str.lastIndexOf("test");
String result = str.substring(pos);