文字列をチェックし、数字とコンマのみを含めることを許可するメソッドを Java で作成しようとしています。また、繰り返し数はあり得ません。
例えば:
11,22,33
- これで結構です22,22,33
- これは問題ありません
私は正規表現とSet<String>
(以下)の組み合わせを使用して最初のドラフトを作成しましたが、できれば正規表現のみを使用して、より良いものを探していました。
public boolean isStringOk(String codes) {
if(codes.matches("^[0-9,]+$")){
Set<String> nonRepeatingCodes = new LinkedHashSet<String>();
for(String c: codigoRoletas.split(",")){
if(nonRepeatingCodes.contains(c)){
return false;
}
else{
nonRepeatingCodes.add(c);
}
}
return true;
}
return false;
}
これが正規表現のみを使用して可能かどうかは誰にもわかりませんか?