与えられた式を使用して、マッチャーが見つけることができる文字列を取得しようとしています。このようなもの..Java:入力から一致した文字列を取得
if(matcher.find())
System.out.println("Matched string is: " + ?);
これにはどのようなコードが適していますか? Oracleによれば
matcher.group();
方法は、予め
matcher.group(0);
おかげと同じだけ設けられた入力を..返す
編集:
例を以下次の
private static String fileExtensionPattern = ".*<input type=\"hidden\" name=\".*\" value=\".*\" />.*";
private static Matcher fileXtensionMatcher;
private static String input = text "<html><body><table width="96"><tr><td><img src="file:/test" /><input type="hidden" name="docExt" value=".doc" />Employee Trv Log 2011 Training Trip.doc</td></tr></table></body></html>"
private static void findFileExtension() {
System.out.println("** Searching for file extension **");
System.out.println("Looking for pattern: " + fileExtensionPattern);
fileXtensionMatcher = fileXtensionExp.matcher(input);
if(fileXtensionMatcher.find()) {
//the extension expression is contained in the string
System.out.println("Extension expression found.");
System.out.println(fileXtensionMatcher.group());
}
}
得られた結果は次のとおりです。
text "<html><body><table width="96"><tr><td><img src="file:/test" /><input type="hidden" name="docExt" value=".doc" />Employee Trv Log 2011 Training Trip.doc</td></tr></table></body></html>"
をあなたはそれを試してみましたか?そうした場合、 'matcher.group()'が必要とするものを正確に実行できることが分かりました。 – Marcelo
@Marcelo最後の答えにコメントをお読みください – arin
あなたのソースコードを見てから答えが追加されました。 – Marcelo