有这样一个字符串“133uu3a”,如何判读里面是不是存在数字?

解决方案 »

  1.   

    此回复为自动发出,仅用于显示而已,并无任何其他特殊作用
    楼主【lys0410】截止到2008-07-18 13:49:13的历史汇总数据(不包括此帖):
    发帖的总数量:49                       发帖的总分数:950                      每贴平均分数:19                       
    回帖的总数量:36                       得分贴总数量:2                        回帖的得分率:5%                       
    结贴的总数量:15                       结贴的总分数:240                      
    无满意结贴数:7                        无满意结贴分:170                      
    未结的帖子数:34                       未结的总分数:710                      
    结贴的百分比:30.61 %               结分的百分比:25.26 %                  
    无满意结贴率:46.67 %               无满意结分率:70.83 %                  
    楼主该结一些帖子了
      

  2.   

    存在数字的定义是什么?如果只是简单的想看一个字符串中是否包含0-9之间的数字,直接用String的matches方法去匹配一个正则表达式就可以了阿。
      

  3.   


    String str="u0rh";
    char[] charArr=str.toCharArray();
    int i=0;
    boolean hasNum=false;
    while(i<charArr.length)
    {
    if(charArr[i]<='9' && charArr[i]>='0')
    {
    hasNum=true;
    break;
    }
    i++;
    }
    if(hasNum)
    System.out.println("has number");
    else
    System.out.println("no number");
      

  4.   


            String str = "133uu3a";
            Pattern p = Pattern.compile("\\d+");
            Matcher m = p.matcher(str);        if(m.find())
            {
                System.out.println("存在数字");
            }
            else
            {
                System.out.println("没有数字");
            }
      

  5.   


    String str = "133uu3a";
    if(str.split("\d").length>0){
    //字符串里有数字
    }else{
    //字符串里没有数字
    }
      

  6.   


    Matcher m = new Pattern.compile("[0-9]").matcher(str);
    if(m.find()) {
    包含
    }
      

  7.   

    改进一下我之前那个(主要是提高效率)String str="u0rh";
    int i=0;
    boolean hasNum=false;
    while(i<str.length())
    {
    if(str.charAt(i)<='9' && str.charAt(i)>='0')
    {
    hasNum=true;
    break;
    }
    i++;
    }
    if(hasNum)
    System.out.println("has number");
    else
    System.out.println("no number");
      

  8.   


    String str="adf1ad";
            boolean flag=str.matches("\\w*[0-9]+\\w*");
            System.out.println(flag);
      

  9.   

    这个肯定是不对的,即使str="",split得到的数组的长度也是1
      

  10.   

    To:狂人
     Pattern p = Pattern.compile("\\d+");(\d 匹配数字:[0-9] ,/引用吗?+是什么作用?)谢谢5楼狂人,解答一下。