验证用户名是否正确

StringUtil.java

public class StringUtil {
    public StringUtil(){}
    private String str;//要判断的字符串
    private boolean valid;//是否有效
    private String cue;//提示信息
    public String getStr() {
        return str;
    }
    public void setStr(String str) {
        this.str = str;
    }
    public boolean isValid() {
        char cArr[]=str.toCharArray();
        int firstChar=(int)cArr[0];//第一个字符的ASCII码
        StringBuffer sb=new StringBuffer("");
        /*判断首字母是否为字母*/
        if((firstChar>=65&&firstChar<=90)||(firstChar>=97&&firstChar<=122)){
            for (int i = 1; i < cArr.length; i++) {
                int ascii = cArr[i];
                /*判断字符是否为字母,数字或下划线*/
                if ((ascii>=48&&ascii<=57)||(ascii>=65&&ascii<=90)||(ascii>=97&&ascii<=122)||(ascii==95)) {
                    sb.append(cArr[i]);
                }
            }
            int length=cArr.length-sb.toString().length();
            if(length==1){
                /*如果被判断字符串的长度与sb字符串的长度差1*/
                this.setCue("用户名格式正确!");
                valid=true;
                return valid;
            }else {
                this.setCue("用户名格式错误,只能由字母,下划线,数字组成!");
                valid=false;
                return valid;
            }
        }else {
            this.setCue("首字符必须为字母!");
            valid=false;
            return valid;
        }
    }
    public void setValid(boolean valid) {
        this.valid = valid;
    }
    public String getCue() {
        return cue;
    }
    public void setCue(String cue) {
        this.cue = cue;
    }
    
}

index.jsp


    
请输入用户名: 只能由字母,数字,下划线组成

result.jsp


    <%
        request.setCharacterEncoding("utf-8");
        String name= request.getParameter("name");
    %>
    
    
    
    
输入的用户名是:
是否有效:
提示信息:
10.PNG

你可能感兴趣的:(验证用户名是否正确)