Java Regex检查信用卡号码

Java Regex检查信用卡号码,java,regex,Java,Regex,我不熟悉正则表达式,正在尝试编写一个程序,以查看用户输入的信用卡号是否在有效范围内(在13到16以及所有数字范围内)。下面是我编写的java代码,我的正则表达式不能满足我的需要 //Credit card number 1234567891234567 matched against regex boolean b = Pattern.matches("4\ d{ 12} (\ d{ 3} )?", "1234567891234567"); if(b==true) { Syste

我不熟悉正则表达式,正在尝试编写一个程序,以查看用户输入的信用卡号是否在有效范围内(在13到16以及所有数字范围内)。下面是我编写的java代码,我的正则表达式不能满足我的需要

//Credit card number 1234567891234567 matched against regex
boolean b = Pattern.matches("4\ d{ 12} (\ d{ 3} )?", "1234567891234567");
if(b==true)
{
        System.out.println("credit card is valid");
}
else
{
        System.out.println("credit card is not valid");
}

这很简单。这是您的正则表达式:

"\\d{13,16}"

此问题在使用前已解决。这里有一个

具体要求是什么?正则表达式模式中的所有空格都肯定是个问题。不要忘记检查数字。仅仅通过正则表达式检查长度并不能使其成为有效的cc号。