0

私は次のようなパターンに一致させようとしています:

TR @(任意の数の単語文字がここに表示されます):

したがって、パターンはTRで始まり、スペースが1つ、@があり、任意の文字があり、:で終わります。

これが私の正規表現です:Pattern p = Pattern.compile("TR\\s@[\\w]+:");

それは機能しており、たとえば次の場合に失敗します。

TR @abcnews:

私のエラーは空白にあると思います。

4

1 に答える 1

1

デモ

正規表現:TR\s+@(\w+):

これはテキストの後方参照も行います。TR と @ の間の複数のスペースを受け入れるので、うまく機能します。

編集適切に機能しているJavaコード:

Matcher ma = Pattern.compile("TR\\s+@(\\w+):").matcher("TR    @asdfasd:");
while (ma.find()) {
    System.out.println(ma.group(1));
}
于 2012-10-30T23:13:48.073 に答える