gpt4 book ai didi

java - 替换字符串中的子字符串

转载 作者:行者123 更新时间:2023-11-30 03:01:21 24 4
gpt4 key购买 nike

我今年 16 岁,正在尝试学习 Java,我叔叔给了我一篇论文,其中涉及 Java 的内容。其中之一就是编写并执行一个程序,该程序将接受扩展消息作为字符串,例如

Each time she saw the painting, she was happy

并将“she”一词替换为“he”一词。

Each time he saw the painting, he was happy.

这部分很简单,但他希望我能够采用任何形式的 she 并将其替换为他喜欢的形式(sheheShe 她?他?她。他。she'he' 等等)。有人可以帮我制作一个程序来完成这个任务吗?

我有这个

public static void main(String[] args) {
Scanner keyboard = new Scanner(System.in);
System.out.println("Write Sentence");
String original = keyboard.nextLine();
String changeWord = "he";
String modified = original.replaceAll("she", changeWord);
System.out.println(modified);
}

如果这不是找到此类问题答案的正确网站,您能否将我重定向到可以回答此类问题的网站?

最佳答案

最好的方法是使用正则表达式 (regex)。正则表达式允许您匹配单词的模式或类别,以便您可以处理一般情况。考虑您已经列出的案例:

(她对他,她对他,她?对他?,她。对他。,她'对他'等等)

这些案例有什么共同点?您能想到一些适用于所有此类转换的一般规则吗?

但也要考虑一些您没有列出的情况:例如,正如您现在编写的那样,您的代码会将单词“ashes”更改为“ahes”,因为“ashes” ” 包含“她”。正确编写的正则表达式可以让您避免这种情况。

在深入研究正则表达式之前,尝试用简单的英语表达一条或一组规则,说明您想要替换的内容以及应该替换的内容。

然后,learn some regex并尝试应用这些规则。

最后,尝试为各种情况编写一些测试(即使用 JUnit),以便您可以了解代码适用于哪些情况以及不适用于哪些情况。

完成此操作后,如果某些内容仍然不起作用,请随时在此处发布一个新问题,向我们展示您的代码并解释什么不起作用。我们很乐意提供帮助。

关于java - 替换字符串中的子字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35850005/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com