正则表达式问题

时间:2012-07-03 10:17:35

标签: java regex string

我想写一个字符串有的正则表达式 (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");
    }
}

2 个答案:

答案 0 :(得分:6)

更正了回复:

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

当您已经+时,您无需{8}

如果您不想在代码中进一步使用该组,则不需要()

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

答案 1 :(得分:1)

从正则表达式模式的开头和结尾删除/,它会起作用。

相关问题