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 回答