繁体   English   中英

正则表达式(JAVA)

[英]regular-expression (JAVA)

我已经使用此正则表达式来检查用户全名。 但它也会在用户名的最后一个位置接受数字和特殊字符。

情况:

  1. Shivkant Dohaliya-是
  2. Shivkant Dohaliya1-是
  3. Shivkant Dohaliya @-TRUE
  4. Shivkant Dohaliya!1-假
  5. Shivkant Dohaliya1#-虚假

     public void usern() { username="^([a-zA-Z]+[ a-zA-Z]+)$"; pattern=Pattern.compile(username); matcher=pattern.matcher(e1.getUname()); if(matcher.matches()) { e1.textField1.setBorder(BorderFactory.createLineBorder(Color.GREEN)); } else { e1.textField1.setBorder(BorderFactory.createLineBorder(Color.RED)); } } 

我希望对于案例2和案例3,它也应该显示红色边框。

也许您应该改用以下模式:

username="^((?:[a-Z][a-Z]+))(\s)((?:[a-Z][a-Z]+))$";

要么

username="^(\w+)(\s)(\w+)$";

仅用于测试两个以空格分隔的单词。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM