0

任意のプレースホルダーをで再定義できる正規表現から値を抽出するにはどうすればよい$number_of_occurance valueですか?

たとえば、文字列があり、ワイルドカードとしてfinal_0.25Seg1-Frag1ファイル内でこの文字列のすべての一致を検索したいのですが、これを使用して実行できます0.25

Pattern regex = Pattern.compile( "/vod/final_\\d+\\.\\d+Seg1-Frag1" );
Matcher regexMatcher = regex.matcher(data2[0]);

\\d+\\.\\dの値の値を保持し、一致したすべての行の中でこの位置で最大の値を持つものを見つけたいと思います。

4

2 に答える 2

2

パターングループを見たことがありますか?これらを繰り返し処理して、一致する部分式を特定できます。

リンクされた例から。マッチャー。グループ(0)は完全な式です。

CharSequence inputStr = "abbabcd"; // could be a String type
String patternStr = "(a(b*))+(c*)";

// Compile and use regular expression
Pattern pattern = Pattern.compile(patternStr);
Matcher matcher = pattern.matcher(inputStr);
boolean matchFound = matcher.find();

if (matchFound) {
    // Get all groups for this match
    for (int i=0; i<=matcher.groupCount(); i++) {
        String groupStr = matcher.group(i);
    }
}
于 2012-08-10T10:47:55.587 に答える
0

例を挙げてください。Mathcerのドキュメントhttp://docs.oracle.com/javase/7/docs/api/index.html?java/util/regex/Matcher.htmlを読む必要があると思います。groupメソッドを介してキャプチャグループにアクセスできます。

于 2012-08-10T10:49:58.907 に答える