键盘输入任意的三个字符串,实现文本的查找替换功能。如: String source="This is Java program, Java is good ......."; String find="Java"; String dest="Java language"; 要求: (1)将source串中的第一个字符串 find,用字符串dest替换。 (2)仅替换最后的一个串find (3)将source中的所有 find串替换为字符串 dest。 (4)统计 source串中共有多少个单词。打出完整代码,从创建包开始
时间: 2024-02-24 11:00:08 浏览: 60
好的,这里是完整的Java代码,用于实现文本的查找替换功能:
```java
import java.util.Scanner;
public class TextReplace {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("请输入原始字符串:");
String source = scanner.nextLine();
System.out.print("请输入要查找的字符串:");
String find = scanner.nextLine();
System.out.print("请输入要替换的字符串:");
String dest = scanner.nextLine();
// 将source串中的第一个字符串find,用字符串dest替换
String result1 = source.replaceFirst(find, dest);
System.out.println("替换第一个字符串:\n" + result1);
// 仅替换最后的一个串find
String result2 = source.replaceAll("(?s)(.*)" + find, "$1" + dest);
System.out.println("替换最后一个字符串:\n" + result2);
// 将source中的所有find串替换为字符串dest
String result3 = source.replaceAll(find, dest);
System.out.println("替换所有字符串:\n" + result3);
// 统计source串中共有多少个单词
String[] words = source.split("\\W+");
System.out.println("单词个数:" + words.length);
}
}
```
代码分为四个部分,分别实现了四个要求:
1. 使用 `replaceFirst` 方法替换第一个字符串。
2. 使用正则表达式 `"(?s)(.*)" + find` 匹配最后一个字符串,并使用 `$1` 保留之前的内容,然后用 `dest` 替换。
3. 使用 `replaceAll` 方法替换所有字符串。
4. 使用 `split` 方法将字符串分割成单词,然后统计单词个数。
在运行程序时,用户需要依次输入原始字符串、要查找的字符串和要替换的字符串。程序将输出替换后的结果和单词数量。
阅读全文