我有一个应用程序,其中所有输入都通过白名单验证(是正则表达式)。 当输入与正则表达式不匹配时,应用程序会向用户抛出一条错误消息,他应该键入另一个值。
现在,我必须能够在他与正则表达式不匹配时过滤输入。我不知道如何正确地做到这一点。
这就是我想要做的事情:
String inputStr = ... //input value
Pattern p = getValidateurPattern();
if (!p.matcher(inputStr).matches()) {
//a function which return a inputStr such as p.matcher(inputStr).matches() will be true
inputStr = clearInputString(p, inputStr);
}
不幸的是,Pattern对象是我必须知道授权值的唯一内容。
有没有办法做到这一点?
由于
答案 0 :(得分:0)
尝试添加这个。
Boolean b=Arrays.asList(arrayname).contains("String to compare");
这里Arrayname指定数组中的值列表,可用于与我们的String进行比较。
它返回布尔值。 如果数组包含搜索到的String,则返回true,否则返回false。 之后您可以使用真实条件来完成所需的任务。