题目描述
- String s1=“asd00000dd”
k=3
输出asd000dd
代码
public static void main(String[] args) {
String s1="asd00000dd";
Scanner sc=new Scanner(System.in);
int k=sc.nextInt();
System.out.println(deleteKZero(s1,k));
System.out.println(deleteKZero2(s1,k));
}
private static String deleteKZero2(String s1, int k) {
StringBuilder sb=new StringBuilder();
int count=0;
for (int i = 0; i < s1.length(); i++) {
char a=s1.charAt(i);
if(a=='0'){
count++;
}else {
for (int j = 0; j < count%k; j++) {
sb.append(0);
}
sb.append(a);
count=0;
}
}
for (int i = 0; i < count % k; i++) {
sb.append(0);
}
return sb.toString();
}
private static String deleteKZero(String s1, int k) {
String regex="0{"+k+"}";
return s1.replaceAll(regex,"");
}