如果字符串包含“非法字符”,我想编写一个简单的验证器来抛出异常,特别是:
~、@、+、% 和 |
我正在寻找最干净的方法,并希望有一种方法可以定义一个“黑名单”正则表达式,它可能看起来像:
String blacklist = "~@+%|";
String toValidate = getInputFromUser();
if(toValidate.matches(blacklist))
throw new RuntimeException("Illegal characters found!");
但是我知道正则表达式不正确。我是朝着正确的方向前进还是偏离了基础(即是否有更简单的解决方案)?提前致谢!