如何在Android中允许字母,空格和点的名称验证?

时间:2018-08-18 07:05:50

标签: java android regex

我的代码无法输入。有人可以帮我吗?

public boolean isValidLastName(final String lastname){
    Pattern pattern;
    Matcher matcher;
    final String LASTNAME_PATTERN = "[a-zA-Z]+\\.?";
    pattern = Pattern.compile(LASTNAME_PATTERN);
    matcher = pattern.matcher(lasname);
    return matcher.matches();
}

3 个答案:

答案 0 :(得分:0)

点应放在括号内。 使用这个:

[ .a-zA-Z]+

您也可以尝试使用方括号中的\ w \ d替换,但是我不确定Java是否支持。

答案 1 :(得分:-1)

尝试使用此字母代替[a-zA-Z。\ s] +-允许使用字母,点或空格。

答案 2 :(得分:-1)

您不应该在Java的String中使用双“ \”(在特殊字符之前),而只需将点放在方括号中。 您随时可以检查正则表达式的工作方式https://www.regextester.com 您可以在文档中了解有关正则表达式模式的更多信息:https://docs.oracle.com/javase/8/docs/api/java/util/regex/Pattern.html