1

在我正在开发的应用程序中,我需要从 a 中提取第一个单词String并将其放入 anotherString中,然后将其余单词放入 another 中String。我能够使用以下方法提取第一个单词:

String pString = "KOF0000094 Implementation:ListingRequest:User FO-Partner"
int spacePos3 = pString.indexOf(" ");
String pFirstWord = pString.substring(0,spacePos3);

结果:KOF0000094

现在我希望将“Implementation:ListingRequest:User FO-Partner”放入另一个String.

提前感谢您的帮助

4

9 回答 9

3

最简单的解决方案,您已有的。

String restOfString = pString.substring(spacePos3+1)
于 2012-07-23T15:54:09.840 回答
3
String pSecondWord = pString.substring(spacePos3 + 1);
于 2012-07-23T15:54:11.937 回答
3
String whole = "KOF0000094 Implementation:ListingRequest:User FO-Partner";
String firstWord = "";  
String restOfWords = "";

int spacesIndex = whole.indexOf("   ", 0);
restOfWords = whole.substring(spacesIndex, whole.length());
restOfWords = restOfWords.trim();
firstWord = whole.substring(0, spacesIndex);
firstWord = firstWord.trim();
于 2012-07-23T16:02:59.310 回答
2

尝试使用另一个对 substring() 的调用。你想要的字符串中第一个字符的索引是多少?最后一个字符的索引是多少?

于 2012-07-23T15:53:29.183 回答
2

这是简单的字符串解析...只需找到第一个空格的第一个索引...即在 for 循环中...

if(string.charAt(i) == Characters.SPACE)
    indexOfSpace = i;

那么你的第一句话就是

String part1 = string.substring(0,indexOfSpace);

第二个字符串将是

String part2 = string.substring(indexOfSpace + 1);
于 2012-07-23T15:54:00.017 回答
2

您已经有了第一个空格的索引,它标记了第一个单词的结尾,所以您需要做的就是立即从索引中取出子字符串(因此您不包括空格本身)到结尾字符串。

于 2012-07-23T15:54:28.300 回答
0

你可能最好使用 split 函数它看起来像这样:

String pString = "KOF0000094 Implementation:ListingRequest:User FO-Partner";        
String[] parts = pString.split(" ");
String partone = parts[0];
String partwo  = parts[1] + " " +parts[2];

或类似的东西,如果在第一个单词后面的部分中有更多的空格,你可以使用循环或类似的东西;

于 2012-07-23T15:55:46.180 回答
-1

字符串类有一个拆分方法:http ://docs.oracle.com/javase/1.4.2/docs/api/java/lang/String.html#split(java.lang.String )

如果您想获得所有单词,请使用它。

编辑:如评论中所述,String.splitBB Java 不支持。

或者,如果您只想要第一个单词和字符串的其余部分:

int index=yourstring.indexOf(" ");
String firstWord = yourstring.substring(0,index);
String rest = yourstring.substring(index+1);
于 2012-07-23T15:53:15.183 回答
-1

例如,您可以使用拆分...

static String pString = "KOF0000094 Implementation:ListingRequest:User FO-Partner";
    static String[] pFirstWord = pString.split(" ");

/**
 * @param args
 */
public static void main(String[] args) {
    for(String word : pFirstWord) {
        System.out.println(word);
    }
}

这回...

KOF0000094

Implementation:ListingRequest:User

FO-Partner

所以最后一个字符串是 pFirstWord[1] + pFirstWord[2]

于 2012-07-23T15:54:22.243 回答