当前位置: 首页 > 知识库问答 >
问题:

如何在Java中替换StringBuilder中的多个char?

薛霄
2023-03-14

我有一些字符串,我想替换其中的一些字符。一切都很好,直到字符串没有两个或更多相同的字符,程序只是替换了第一个字符,而我无法更改第二个字符。

StringBuilder userTitleBuilder = new StringBuilder(conversedTitle); 

    while (score>1) {
        userLetter = userInput.next().charAt(0);
        if (movieTitle.contains(String.valueOf(userLetter))) {
            charIndex = movieTitle.indexOf(userLetter);
            userTitleBuilder.replace(charIndex,userTitleBuilder.length(), String.valueOf(userLetter));
            System.out.println(userTitleBuilder);
        } else {
            --score;
            System.out.println("Wrong\nTries left "+score);
        }
    }

下面是对这段代码的解释:用户从一开始程序就有一个等于10的分数。userLetter它只是一个字符,它将从用户那里得到一些字母,然后如果语句检查movieTitle变量的字符是否等于用户刚刚输入的字符,如果是,charIndex将有它的位置(但它只包含第一个索引,如果word中有更多相同的字母怎么办?)现在userTitleBuilder替换string中有那么多“_”的字符,它只是覆盖标题。

*MovieTitle和userTitleBuilder具有相同的值=“Cocacola”我想不准备解决方案。我想知道一些提示,如何替换字符串中的多个相同字符

共有1个答案

段干华晖
2023-03-14

可以使用名为string.replace(“old”,“new”)的方法。跟着这个医生。

 类似资料:
  • 问题内容: 如何将值更改为和将值更改为? 当我使用和所有值都更改为最后一个数组值。例: 结果: 问题答案: 这应该为您工作: 输出: 检出此DEMO:http : //codepad.org/b0dB95X5

  • 问题内容: 我试图将字符串分成数组并替换为,但无法做到,我也尝试了String.replaceAll这样的东西。 我想提供一个通往JNI的路径,并且它只能以这种方式读取。 问题答案: 在这种情况下不要使用- 这是用正则表达式指定的,这意味着您需要更多的转义。这应该很好: 请注意,由于Java字符串文字中的原因,反斜杠加倍-因此此处涉及的 实际 字符串是“单反斜杠”和“双反斜杠”-而不是双倍和四倍。

  • 我有一个PHP脚本这是一个字符串替换函数,它接受数组中的字符,如果在字符串中找到任何字符,就替换它们。是否有与该函数等价的java函数。我找到了一些方法,但有些是使用循环,有些是重复语句,但在Java中没有找到类似的单行解决方案。

  • 问题内容: 一个非常简单的小问题,但是我不太明白该怎么做。 我需要将’_’的每个实例替换为空格,并将’#’的每个实例替换为空/空。 我已经试过了: 我真的不喜欢这样的链接命令。还有另一种方法可以做到这一点吗? 问题答案: 使用OR运算符(): 您还可以使用字符类: Fiddle 如果您想用一件事替换哈希值,而用另一件事替换下划线,则只需要链接即可。但是,您可以添加一个原型: 但是为什么不连锁呢?我

  • 我真的不喜欢这样链接命令。有没有另一种方法在一个做?

  • 我需要在java中找到一种类似的巧妙方法来替换多个字符串,就像在php中使用str_replace一样。 我想要一个字符串,然后返回一个字符串,其中数字1到10被替换为这些数字的单词。