3

文字列が(9文字)で、「g」または「r」のいずれかで始まり、その後はすべて数字になる正規表現を作成したいと思います。

私はこれを書きましたが、機能しません:

public static void main(String[] args) {
    String id= "g57895452";
    String pattern = "/^g([0-9]+){8}$/";
    if (id.matches(pattern)) {
        System.out.println("true");
    } else {
        System.out.println("false");
    }
}
4

2 に答える 2

6

再修正:

"^[gr]([0-9]{8})$"

+すでに持っている場合は必要ありません{8}

また()、コード内でグループをさらに使用したくない場合も必要ありません。

"^[gr][0-9]{8}$"
于 2012-07-03T10:20:20.983 に答える
1

/正規表現パターンの最初と最後から削除します。これで機能します。

于 2012-07-03T11:01:50.637 に答える