java如何在输入框中判断是否输入的是数字?

输入数字后用离开事件判断。
2024-11-18 12:41:35
推荐回答(4个)
回答1:

这里是Java后台验证。

        public static void main(String[] args){
     //target是从文本框传来的数据。这里进行模拟
String target = "22221";
//如果为true,则是数字,否则不是。
System.out.println(isNumeric(target));
}

/**
 * 正则表达式:判断是否数字
 * @param str
 * @return
 */
public static boolean isNumeric(String str){ 
    Pattern pattern = Pattern.compile("[0-9]*"); 
    return pattern.matcher(str).matches();    
 }

也可以直接在前台验证,用javascript验证。同样用正则表达式。

  
     function validate(){  
       var reg = new RegExp("^[0-9]*$");  
       var obj = document.getElementById("name");  
    if(!reg.test(obj.value)){  
        alert("请输入数字!");  
    }  
    if(!/^[0-9]*$/.test(obj.value)){  
        alert("请输入数字!");  
    }  
  }  

回答2:

用正则表达式。如果担心输入的是0会报错,可以设置条件为 输入的数字>0

回答3:

  1. 正则: [0-9]{yourText.length()};//出现0-9之间的数字次数刚好为字符串内容长度

  2. try{

     double  temp  = Double.parseDouble(yourText);//不抛出异常则全为数字

    }catch(exception e){

    }

回答4:

用正则表达式,[0-9]+