我想检查一下String的格式。 可能的格式是:
-"AZERTY"
-"AZERTY,REGULAR,AKILO"
我这样做,但我不确定:
String formatAttributes = "^[a-zA-Z0-9](,[a-zA-Z0-9])?*$";
这是对的吗?
答案 0 :(得分:2)
以下是如何继续:
Pattern pattern = Pattern.compile("\\w+(,\\w+)*");
System.out.println(pattern.matcher("AZERTY").matches());
System.out.println(pattern.matcher("AZERTY,REGULAR,AKILO").matches());
<强>输出:强>
true
true
注意: \w
是一个单词字符:[a-zA-Z_0-9]这意味着下划线已添加到您的初始正则表达式中,如果您没有&#39;我想要它,正则表达式将是[a-zA-Z0-9]+(,[a-zA-Z0-9]+)*
答案 1 :(得分:0)
这里有几个合理的解决方案。假设您只想完全匹配两个示例AZERTY
和AZERTY,REGULAR,AKILO
,其中字符可以是任意a-z
。
^([a-z0-9]+(?:,[a-z0-9]+,[a-z0-9]+)?)$
注意:此表达式假定使用不区分大小写的标记。
现场演示