现在页面表单上要求输入验证:以正整数开头,后面跟单位(U/米/CM等)符号,然后保存时再把数字截取出来
输入的那个正则表达式怎么写,截取开头的整数的正则表达式怎么写?

解决方案 »

  1.   

    if(checkfInt(document.forms[0].abc.value)){
    alert("");
    return false;
    }function checkfInt(v){ 
      var pattern = /^-[1-9]d*$/;
    return(pattern.test(v));
    }
    再把那个正则表达式换成你要的,记住提交的时候测试,测试完了以后到后台再把结果抽出来
      

  2.   

    import java.util.regex.*;
    public class Test{
    public static void main(String[] args){
    String value = "123米";
    String regex = "([0-9]*)(U|cm|\u7c73)";
    Pattern p = Pattern.compile(regex);
    Matcher m = p.matcher(value);
    if(m.find()){
    String v1 = m.group(1);
    String v2 = m.group(2);
    System.out.println(v1);
    System.out.println(v2);
    }
    }
    }