0

私は次のコードを使用します

 String fulltext = "I would like to create some text and i dont know what creater34r3, ";
    String subtext = "create";

    int ind = -1;
            do {
                ind = fulltext.indexOf(subtext, ind + subtext.length());

            } while (ind != -1);

その結果、単語の最初のインデックスが見つかりました。

create creater34r3

しかし、私は単語の最初のインデックスだけを見つける必要がありますcreate

どうやってするの?ヘルプ

4

1 に答える 1

1

文字列内の単語全体を検索するという要件を理解している場合、それらが存在する場合は、次のようにします。

    String fulltext = "I would like to create some text and i dont know what creater34r3, ";
    String subtext = "create";
    Pattern pattern = Pattern.compile("\\b(" + subtext + ")\\b");
    Matcher matcher = pattern.matcher(fulltext);
    while (matcher.find()) {
        System.out.println(matcher.group());
    }

出力は次のようになりますcreate

しかし、実際のインデックスが必要であることが私には思い浮かびます。そうであれば、これをwhileブロックに追加できます。

      int start = matcher.start();
      int end = matcher.end();
于 2013-02-28T14:02:18.327 に答える