Java 验证用户输入是否采用此格式;ABC123“;有效布尔值

Java 验证用户输入是否采用此格式;ABC123“;有效布尔值,java,performance,jakarta-ee,swig,Java,Performance,Jakarta Ee,Swig,我在验证航班代码时遇到问题,我希望用户在此表格ABC123中输入航班代码 private void ValidationOfFlightCode(String flightCode) { if (flightCode.length()== 6) { boolean isvalid = Regex.IsMatch(flightCode, @"^[a-zA-Z]{3}[0-9]{3}$"); if (isvalid) {

我在验证航班代码时遇到问题,我希望用户在此表格ABC123中输入航班代码

private void ValidationOfFlightCode(String flightCode)
{
    if (flightCode.length()== 6)
    {
        boolean isvalid = Regex.IsMatch(flightCode, @"^[a-zA-Z]{3}[0-9]{3}$");
        if (isvalid)
        {
            boolean isLetter = false;
            for (int i = 0; i < 3; i++)
            {
                isLetter = Char.IsLetter(flightCode, i);
                if (!isLetter)
                    break;
            }
            if (isLetter)
            {
                System.err.println(flightCode + ": " + isvalid);
            }
            else
            {
                System.err.println("");
            }
        }
        else
        {
            System.err.println("");
        }
    }
    else
    {
        System.err.println("");
    }
}
private void ValidationOfFlightCode(字符串flightCode)
{
if(flightCode.length()=6)
{
boolean isvalid=Regex.IsMatch(flightCode,@“^[a-zA-Z]{3}[0-9]{3}$”;
如果(有效)
{
布尔值=假;
对于(int i=0;i<3;i++)
{
isLetter=字符isLetter(飞行代码,i);
如果(!Isleter)
打破
}
如果(胰岛移植)
{
System.err.println(flightCode+:“+isvalid);
}
其他的
{
System.err.println(“”);
}
}
其他的
{
System.err.println(“”);
}
}
其他的
{
System.err.println(“”);
}
}
那么:

private void ValidationOfFlightCode(String flightCode){
   boolean isValid = flightCode.matches("^[A-Z]{3}[0-9]{3}$");
   System.out.println(flightCode + ": " + isValid);
}
基本上,代码的其余部分是不必要的,因为正则表达式已经包含6个字符的要求和指定的格式(3个大写字母,然后是3个数字)。 更有意义的是:

private boolean validateFlightCode(String flightCode){
   boolean isValid = flightCode.matches("^[A-Z]{3}[0-9]{3}$");
   //System.out.println(flightCode + ": " + isValid);
   return isValid;
}
第二个选项也返回验证结果。另外,方法命名是根据Java编码约定进行的,可读性更好,因为您实际上不是在描述过程(验证),而是在描述操作(验证)


编辑:只对大写字母使用
“^[A-Z]{3}[0-9]{3}$”
“^[A-Z]{3}[0-9]{3}$”
只对小写字母使用
”,
“^[A-zA-Z]{3}[0-9]{3}$”
混合字母和
“^[A-Z]{3}[0-9]{3}混合字母使用
,你面临的问题是什么(除了这段代码看起来不像Java之外,因为在这种语言中没有标准的
Regex
class condaing
IsMatch
方法)?我不清楚您的实际问题是什么
Char.isleter(flightCode,I)的目的是什么
检查?您已经检查了,输入的格式是否正确。swig的链接是什么?很难说OP是否只需要大写字母。可能需要添加一个他必须确定的信息。是的,谢谢,添加了关于不同正则表达式格式的其他信息。谢谢大家,我很感激。