我需要验证字符串是否有模式。
所以,我决定这样的事情......
private static final Pattern PATTERN = Pattern.compile("(?:[A-Z]{5}[*]?|[A-Z]{4}[*]|[A-Z]{3}[*]{2}|[A-Z]{2}[*]{3}|[A-Z][*]{4})[A-Z][A-Z*]\\d{3}[A-Z\\d]{2}");
以后我的方法:
PATTERN.matcher(s).matches()
但到目前为止,我还没有成功。
我知道该模式会过滤特殊字符,但是可以制作一个模式来过滤字符串吗?
LLLLLFMYYXmb
WOO**JT547KA
WALKECR577DU
我基本上想要的是在前5个空格也允许***,如果我有3个字符串,我可以**(按此顺序)或如果我有4个字符串,一个*等等..
知道怎么做吗?或者我的表情有什么问题?
编辑:
格式基于数字的构造方式,这里是参考。
http://www.highprogrammer.com/alan/numbers/dl_us_wa.html
因此,前5个字母是由截断的姓氏组成的,但是姓氏可能太短而且不会产生5个字符,因此,缺少的空格将获得*直到完整的5个字符。