char[] ch = str.toCharArray(); int count = 0; for(int i = 0 ; i < ch.length; i++) { if(ch[i] =='0') { count++; } } System.out.println(count);
str.length()-str.replaceAll 这个不是替换麽 这个什么意思
char[] ch = str.toCharArray(); for(char c:ch){
}
char[] ch = str.toCharArray(); int count = 0; for(int i = 0 ; i < ch.length; i++) { if(ch[i] =='0') { count++; }else{ break; } } System.out.println(count);
String s = "402000"; System.out.println(s.replaceAll("^.*?(0*)$", "$1").length());hmmm,这样应该也可以吧
public static void main(String[] args) { // TODO Auto-generated method stub String a = "43000021300"; int j = 0; for(int i=a.length()-1;i>=0;i--) { char c = a.charAt(i); if((int) c != 48) { System.out.println(j); break; } j++; } }
String st = "23800000"; int sum = 0; String[] c = st.split(""); for (int i = c.length - 1; i > 0; i--) { if (!"0".equals(c[i])) { break; } else { sum++; } } System.out.println(sum); }
String str = "402000"; int n = str.length()-str.replaceAll("0+$","").length(); System.out.println(n);
String s = "402000"; System.out.println(s.length()-s.replaceAll("0*$", "").length());
String str = "402000"; int n = str.length()-str.replaceAll("0*$","").length(); System.out.println(n)
我也来个,旁门左道: public static int howManyZeros(String s) { if (s == null || s.equals("")) { return 0; } String temp = new StringBuilder(s).reverse().toString(); temp = temp.replaceFirst("[0]*", ""); return s.length() - temp.length(); }
int n = str.length()-str.replaceAll("0","").length();
char[] ch = str.toCharArray();
int count = 0;
for(int i = 0 ; i < ch.length; i++)
{
if(ch[i] =='0')
{
count++;
}
} System.out.println(count);
str.length()-str.replaceAll 这个不是替换麽 这个什么意思
char[] ch = str.toCharArray();
for(char c:ch){
}
int count = 0;
for(int i = 0 ; i < ch.length; i++)
{
if(ch[i] =='0')
{
count++;
}else{
break;
}
} System.out.println(count);
System.out.println(s.replaceAll("^.*?(0*)$", "$1").length());hmmm,这样应该也可以吧
// TODO Auto-generated method stub
String a = "43000021300";
int j = 0;
for(int i=a.length()-1;i>=0;i--) {
char c = a.charAt(i);
if((int) c != 48) {
System.out.println(j);
break;
}
j++;
} }
int sum = 0;
String[] c = st.split("");
for (int i = c.length - 1; i > 0; i--) {
if (!"0".equals(c[i])) {
break;
} else {
sum++;
}
}
System.out.println(sum);
}
String str = "402000";
int n = str.length()-str.replaceAll("0+$","").length();
System.out.println(n);
String s = "402000";
System.out.println(s.length()-s.replaceAll("0*$", "").length());
int n = str.length()-str.replaceAll("0*$","").length();
System.out.println(n)
public static int howManyZeros(String s) {
if (s == null || s.equals("")) {
return 0;
}
String temp = new StringBuilder(s).reverse().toString();
temp = temp.replaceFirst("[0]*", "");
return s.length() - temp.length();
}
char[] b=a.toCharArray();
int sum=0;
for(int i=a.length()-1,i>=0,i--)
{
if(b[i]=='0')
{sum++;}
else
break;
}
System.out.println(sum);
额,是说我吗?不好意思,前面网络断了……
"^.*?0*$"
上面这个正则很容易理解的对吧,任意起始,采用懒惰,然后结尾都是0
然后括号么,怎么说,可以认为是分组或者怎么说来着就拿这个为例
对于"402000"字符串,"^.*?(0*)$"中$1就是后面那个"000"
如果是"^(.*?)(0*)$",那么$1就是"402",$2就是"000"
上次那个去除前后逗号的例子
字符串为",,,a,bc,,",正则是"^(,*)(.*?)(,*)$",那么$1就是",,,",$2是"a,bc",$3是",,"啊啊,表达能力好差,本来也是从别人的代码里看来的,凭自己理解的,是不是完全正确也不是很清楚哦……
str = str.replaceAll("[1-9]", "1");
return str.length()-str.lastIndexOf("1") - 1;
}