我应该验证它具有“知识”的用户字段名称之一 知识字段的格式应如下所示:
"knwl1" knwl1 is knowldge1!
"knw12" knwl2 is knowledge3!
"abcx" there is knowledge!
sooo on
验证:
应该有knwl1,knwl2的任何数字。...
必须用引号括住
句子应该在敲完之后出现
句子以!结尾并以“ knwl”开头
我尝试用感叹号吐出知识,并检查是否在随地吐痰的字符串中使用引号。
如果有人显示正则表达式一次来验证整个字段,那将更好,如果没有,请提供我在哪里做错了。
public boolean is_valid_knowledge(String knowledge) {
boolean is_valid_knowledge=false;
boolean checkexclamatory=knowledge.matches("[!]");
if(checkexclamatory){
String[] arrOfStr = knowledge.split("[!]");
for (String var : arrOfStr)
{
String knowledgesplitPattern = "(.*?)";
boolean match = Pattern.matches(knowledgesplitPattern,var);
if(match==false){System.out.println("check3");
is_valid_knowledge=false; editTextKnowledge.setError("format incorrect"); break;}
else{is_valid_knowledge=true;}
}
return is_valid_knowledge;
}
return is_valid_knowledge;
}