public static void main(String[] args)
{
String str = "000000010";
char arr[] = str.toCharArray();
int j = 0;
for(int i = 0; i < arr.length; i ++)
{
Integer ii = Integer.parseInt(arr[i] + "");
if(ii != 0)
{
j = i;
break;
}
}
System.out.println(j);
str = str.substring(j);
System.out.println(str);
}
截取字符串的数字,如果前面有0,去除.
大家还有什么好办法.这个是我写的.有正则怎么写?

解决方案 »

  1.   

    此回复为自动发出,仅用于显示而已,并无任何其他特殊作用
    楼主【supercrsky1】截止到2008-07-16 17:14:24的历史汇总数据(不包括此帖):
    发帖的总数量:3                        发帖的总分数:280                      每贴平均分数:93                       
    回帖的总数量:8                        得分贴总数量:0                        回帖的得分率:0%                       
    结贴的总数量:3                        结贴的总分数:280                      
    无满意结贴数:0                        无满意结贴分:0                        
    未结的帖子数:0                        未结的总分数:0                        
    结贴的百分比:100.00%               结分的百分比:100.00%                  
    无满意结贴率:0.00  %               无满意结分率:0.00  %                  
    敬礼!
      

  2.   


    "000002001".replaceFirst("^0*", "")
      

  3.   


    这是适用于不超过整形大小的字符串,如果超过则会出现问题java.lang.NumberFormatException异常
    用正则表达式乃正解
      

  4.   

    全字符的匹配的。
     String ss = "fawefawe0004324";
        Pattern p =  Pattern.compile("[0-9]*");
        Matcher m = p.matcher(ss);
        
        while (m.find()) {
         String re = m.group();
         re = re.replaceFirst("^0*", "");
         System.out.print(re);
        }