从Java中的字符串中删除第一个单词
从Java中的字符串中删除第一个单词的最佳方法是什么?
如果我有
String originalString = "This is a string";
我想从中删除第一个单词,实际上形成两个字符串 –
removedWord = "This" originalString = "is a string;
简单。
String o = "This is a string"; System.out.println(Arrays.toString(o.split(" ", 2)));
输出:
[This, is a string]
编辑:
在下面的第2行中,值存储在arr
数组中。 像普通数组一样访问它们。
String o = "This is a string"; String [] arr = o.split(" ", 2); arr[0] // This arr[1] // is a string
这肯定是一个很好的解决方案
String originalString = "This is a string"; originalString =originalString.replaceFirst("This ", "");
您可以使用substring
removedWord = originalString.substring(0,originalString.indexOf(' ')); originalString = originalString.substring(originalString.indexOf(' ')+1);
如需立即回答,您可以使用:
removeWord = originalString.substring(0,originalString.indexOf(' ')); originalString = originalString.substring(originalString.indexOf(' '));
尝试使用索引var,我认为它非常有效:
int spaceIdx = originalString.indexOf(" "); String removedWord = originalString.substring(0,spaceIdx); originalString = originalString.substring(spaceIdx);
在JDK 1.7之前使用下面的方法可能会更有效,特别是如果你使用长字符串(参见本文 )。
originalString = new String(originalString.substring(spaceIdx));
您可以检查第一个空格字符和单独字符串的位置。
String full = "Sample Text"; String cut; int pointToCut = full.indexOf( ' '); if ( offset > -1) { cut = full.substring( space + 1); }
String str = "This is a string"; String str2=str.substring(str.indexOf(" ")); String str3=str.replaceFirst(str2, "");
String的replaceFirst和substring
你也可以使用这个解决方案:
static String substringer(String inputString, String remove) { if (inputString.substring(0, remove.length()).equalsIgnoreCase(remove)) { return inputString.substring(remove.length()).trim(); } else { return inputString.trim(); } }
示例:substringer(“This is a string”,“This”);
您可以使用StringTokenizer类。