分析以下需求,并用代码实现
-
1.键盘录入一个源字符串由字符串变量scrStr接收 2.键盘录入一个要删除的字符串由字符串变量delStr接收 3.要求 删除该字scrStr符串中的所有delStr字符串(最终的字符串中不能包含delStr) 要求打印删除后的结果以及删除了几个delStr字符串 4.代码运行打印格式: 请输入源字符串:java woaijava,i like jajavava i enjoy java 请输入要删除的字符串:java 控制台输出结果:源字符串中总共包含:5 个 java 删除java后的字符串为: woai,i like i enjoy
package com.itheima2;
import java.util.Scanner;
public class Test3 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入源字符串:");
String scrStr = sc.nextLine();
System.out.println("请输入要删除的字符串:");
String delStr = sc.nextLine();
//调用方法
printCount(scrStr, delStr);
}
//删除该字scrStr符串中的所有delStr字符串(最终的字符串中不能包含delStr)
//要求打印删除后的结果以及删除了几个delStr字符串
/*
* 方法:public boolean contains(CharSequence s(要搜索的序列))
* 该方法作用:如果此字符串包含 s,则返回 true,否则返回 false
*
* 方法:public String replaceFirst(String regex(用来匹配此字符串的正则表达式),String replacement(用来替换第一个匹配项的字符串))
* 该方法作用:使用给定的 replacement 替换此字符串匹配给定的正则表达式的第一个子字符串。
*
* 返回值类型:
* 参数列表:String scrStr,String delStr
*/
public static void printCount(String scrStr,String delStr) {
int count = 0;
while(scrStr.contains(delStr)) {
count++;
scrStr = scrStr.replaceFirst(delStr, "");
}
System.out.println("源字符串中总共包含"+count+"个"+delStr+",删除"+delStr+"后的字符串为"+scrStr);
}
}
控制台内容