繁体   English   中英

验证Java中的代码格式

[英]Verify code format in Java

我正在为学校开展一个项目,我们必须验证代码的格式。 格式为3个大写字母,后跟3个数字,其中至少1个数字不是0.因此ABC001有效。 ABC000无效。

我被困的地方是我如何编写格式来验证数字,以便在001-999有效时000无效。 下面是代码,它目前是为了使000有效。

public static boolean validateInvoiceCode(String invoiceCode)
{
      return invoiceCode.matches("[A-Z][A-Z][A-Z][0-9][0-9][0-9]");
}

添加一个负面的lookbehind (?<!...)黑名单000

[A-Z][A-Z][A-Z][0-9][0-9][0-9](?<!000)

Regex101演示

您可能还希望使用量词来改进正则表达式,并使用\\d来表示数字:

[A-Z]{3}\\d{3}(?<!000)

Regex101演示

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM