次の文字列をパターンと照合しようとしています。
String s = "AAA|VY~1055~ ~~BCN~09/24/2012~";
Matcher m = Pattern.compile("(.*)\\|VY\\~(.*)\\~").matcher(s);
if (m.find())
{
String value = m.group(2);
System.out.print("value = " + value);
}
出力は次のとおりです。
value = 1055~ ~~BCN~09/24/2012
しかし、私はこれが欲しい:
value = 1055
文字列の最後まですべての文字を取得するのはなぜですか?
文字列の最後まで消費しようとしているものを読んで、試しました:
Matcher m = Pattern.compile("(.*)\\|VY\\~(.*)\\~(.*)").matcher(s);
Matcher m = Pattern.compile("(.*)\\|VY\\~(.*)\\~.*").matcher(s);
しかし、うまくいきません。
誰でも私を助けることができますか?