在第一个单词之后提取超过3个单词

时间:2012-07-23 15:49:22

标签: blackberry java-me

在我正在处理的应用中,我需要从String中提取第一个单词并将其放入另一个String,将其余单词放入另一个String中。我能够使用以下方法提取第一个单词:

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

结果:KOF0000094

现在我想要“实施:ListingRequest:用户FO-Partner” 在另一个String

感谢您的提前帮助

9 个答案:

答案 0 :(得分:3)

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

String restOfString = pString.substring(spacePos3+1)

答案 1 :(得分:3)

String pSecondWord = pString.substring(spacePos3 + 1);

答案 2 :(得分: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();

答案 3 :(得分:2)

尝试使用另一个subtring()调用。你想要的字符串中第一个字符的索引是什么?最后一个字符的索引是什么?

答案 4 :(得分:2)

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

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

然后你的第一个单词将是

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

,第二个字符串将是

String part2 = string.substring(indexOfSpace + 1);

答案 5 :(得分:2)

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

答案 6 :(得分:0)

您可能更擅长使用拆分功能 它看起来像这样:

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

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

答案 7 :(得分:-1)

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

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

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

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

int index=yourstring.indexOf(" ");
String firstWord = yourstring.substring(0,index);
String rest = yourstring.substring(index+1);

答案 8 :(得分:-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]