猿问

如何检查和替换字符串中的字符序列?

这里程序的输出是什么:if originalString = "CATCATICATAMCATCATGREATCATCAT"; 输出应该是“我很棒”。该代码必须找到字符序列(在本例中为 CAT),并将其删除。另外,生成的字符串必须在单词之间有空格。

        String origString = remixString.replace("CAT", "");

我发现我必须使用 String.replace,但是找出它是否不是 cat 并生成单词之间有空格的结果字符串的逻辑可能是什么。


慕村9548890
浏览 130回答 3
3回答

慕桂英3389331

首先,您可能想改用该replaceAll方法,以确保替换字符串中所有出现的“CAT”。然后,您想引入空格,因此不要使用空字符串,而是将“CAT”替换为“”(空格)。正如下面的评论所指出的,单词之间可能有多个空格 - 因此我们使用正则表达式将多个“CAT”实例替换为一个空格。“+”符号表示“一个或多个”。最后,修剪 String 以去除前导和尾随空白。remixString.replaceAll("(CAT)+", " ").trim()

隔江千里

也许这会有所帮助String result = remixString.replaceAll("(CAT){1,}", " ");

临摹微笑

您可以使用replaceAll它接受正则表达式:String remixString = "CATCATICATAMCATCATGREATCATCAT"; String origString = remixString.replaceAll("(CAT)+", " ").trim();replace注意:和的命名replaceAll非常混乱。它们都替换匹配字符串的所有实例;区别在于,它replace采用文字文本作为参数,而replaceAll采用正则表达式。
随时随地看视频慕课网APP

相关分类

Java
我要回答