2009-06-18 2 views
1

私はいくつかの文字列マッチングを行うJavaプログラムを持っています。文字列に一致するものを探しています。\d+x\d+これは、PatternクラスとMatcherクラスを使用して動作します。しかし、私が見つけたString部分を解析するためには、私はMatcher.find()Matcher.group()から手に入れてStringを手作業で解析しなければなりません。どうすればいいですかPattern(\d+)x(\d+)という形で何かを探していて、Matcherでそれらのグループを別々に返すようにしますか? 文字列 "1x23"の代わりに、 "1"と "23"という2つの文字列を取得したいとします。JavaのMatcherからいくつかの正規表現グループを取得するには?

答えて

8

Matcher.group(int)ではなくMatcher.group()を使用してください。
与えられた正規表現と入力では、group(1)は "1"で、group(2)は "23"でなければなりません。

+0

リストに2番目のパターンが必要であることに注意してください。(\ d +)x(\ d +)ので、マッチャーはグループを知ることができます。 –

+0

はい、私は(2つの正規表現が与えられているので)それを明確にすべきでした。 –

+0

魅力的な作品、thx – Jorn

関連する問題