【问题标题】:If the first name, last name and the nick name starts with the special chars [closed]如果名字,姓氏和昵称以特殊字符开头[关闭]
【发布时间】:2017-02-02 08:37:23
【问题描述】:

如果名字、姓氏和昵称以特殊字符开头,例如 !@#$%^&*()_+?> 然后显示如下错误消息“输入有效的名字/姓氏姓名/昵称”

【问题讨论】:

  • 你有什么问题?
  • 使用正则表达式进行验证
  • 首先,stackoverflow 并不是有人会为您解决整个问题的地方。您需要向我们展示代码并在遇到问题时确定位置。
  • 欢迎来到 StackOverflow。如何提出一个好问题 -> stackoverflow.com/help/how-to-ask

标签: java android


【解决方案1】:

您可以使用String#matches() 来检查名称是否以黑名单中的任何特殊字符开头:

if (name.matches("(?:!|@|#|\\$|%|\\^|&|\\*|\\(|\\)|_|\\+|\\?|>|‌​<).*")) {
    System.out.println("Enter valid name");
} 

另一种方式:

String specialChars = "!@#$%^&*()_+?><";
if (specialChars.indexOf(name.charAt(0)) != -1) {
    System.out.println("Enter valid name");
}

【讨论】:

    【解决方案2】:

    试试下面的代码

    String regex = "!@#$%^&*()_+?></ *";
    
    if (regex.contains(firstname.charAt(0))){
       //--- set error
    }
    

    【讨论】:

    • 谢谢它为我工作
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-05-19
    • 2016-02-22
    • 2021-07-13
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多