私のコードに次の文字列パターンをマッチさせたいと思います。文字列値を以下のように固定されている:Java正規表現のパターンマッチング
630512-07-5847
Pattern p = Pattern.compile("(\\d{6,6})-(\\d{2,2})-(\\d{4,4})");
私はそれがそのような「630512312-07-5847」などのより多数を有する場合、しかし、上記のコードを試みた、それまだ
私のコードに次の文字列パターンをマッチさせたいと思います。文字列値を以下のように固定されている:Java正規表現のパターンマッチング
630512-07-5847
Pattern p = Pattern.compile("(\\d{6,6})-(\\d{2,2})-(\\d{4,4})");
私はそれがそのような「630512312-07-5847」などのより多数を有する場合、しかし、上記のコードを試みた、それまだ
は試合が始まると、文字列全体で終わるならば、これは確認します
^\\d{6}-\\d{2}-\\d{4}$
を試しtrueを返し
はそう
OKではない、あなたは実際に試してみましたしていますか?
public class Test {
public static void main(String[] args) {
System.out.println("630512312-07-5847".matches("(\\d{6,6})-(\\d{2,2})-(\\d{4,4})"));
}
}
結果はあなたの方法は、しかし、働く私はMatcher.findを使用するときに()を2回、それは私に二つの異なる結果を返す、
あなたも答えがうまくいきます。私は文字列マッチングのためのパターンとマッチャのライブラリを使用しています。ライブラリなしではこのようなメソッドの動作を知らなかった – hiboss
ありがとう、悪い質問falseです。 – hiboss
たとえば、 System.out.println(m.find()); return m.find(); – hiboss
最初の 'find'は' true'を返し、2回目は 'false'を返します。 –