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

如何替换字符串的子字符串[重复]

颜新
2023-03-14

假设我有一个字符串String,如下所示:

"abcd=0; efgh=1"

我想把“abcd”换成“dddd”。我曾试图做这样的事:

string.replaceAll("abcd","dddd");

它不起作用。有什么建议吗?

编辑:更具体地说,我在Java工作,我试图解析超文本标记语言文档,具体地说之间的内容

 if(tag instanceof ScriptTag){
        if(((ScriptTag) tag).getStringText().contains("DataVideo")){
            String tagText = ((ScriptTag)tag).getStringText();
      }
}

现在我必须找到一种方法,如何用另一个子串替换一个子串。


共有3个答案

刘泰
2023-03-14

您需要创建变量来分配新值,如下所示:

String str = string.replaceAll("abcd","dddd");
终洛华
2023-03-14

你应该注意的2件事:

  1. Java中的字符串是不可变的,所以您需要将替换方法调用的返回值存储在另一个字符串中
  2. 这里不需要正则表达式,只要简单地调用String#replace(String)就可以了

因此,只需使用以下代码:

String replaced = string.replace("abcd", "dddd");
丁俊智
2023-03-14

需要使用replace eAll()方法的返回值。replace eAll()不替换当前字符串中的字符,它返回一个带有替换的新字符串。

  • 字符串对象是不可变的,它们的值在创建后不能更改
  • 如果不需要正则表达式,可以使用replace()代替replaceAll()
    String str = "abcd=0; efgh=1";
    String replacedStr = str.replaceAll("abcd", "dddd");

    System.out.println(str);
    System.out.println(replacedStr);

输出

abcd=0; efgh=1
dddd=0; efgh=1
 类似资料:
  • 给定一个包含项a和B的字符串M,我想用每个a来代替B,用每个B来代替a来代替M'。天真地,人们会尝试用B代替A,然后用A代替B,但在这种情况下,M'只包含A。我可以想到替换这些项,并记录它们的位置,这样这些项就不会再被替换了。当我们只有A和B可以替换时,这是有效的。但是如果我们需要替换两个以上的项,而且它们的长度不同,那么这就变得很棘手了。 所以我想这样做: 我们将M作为输入字符串,并将R=[(x

  • 问题 你需要用另一个值替换字符串的一部分。 解决方案 使用 JavaScript 的 replace 方法。它与给定字符串匹配,并返回已编辑的字符串。 第一个版本需要 2 个参数:模式和字符串替换 "JavaScript is my favorite!".replace /Java/, "Coffee" # => 'CoffeeScript is my favorite!' "foo bar b

  • 本文向大家介绍替换Java字符串中的子字符串,包括了替换Java字符串中的子字符串的使用技巧和注意事项,需要的朋友参考一下 假设以下是我们的字符串。 我们想将子字符串“ Dead”替换为“ Alive”。为此,让我们使用以下逻辑。在这里,我们使用了while循环,并在其中找到了要替换的子字符串的索引。这样,我们一个接一个地替换了整个子字符串。 以下是替换子字符串的完整示例。 示例 输出结果

  • 问题内容: 表: 值: 我想之前替换字符串用。 结果: 如何使用子字符串和基于字符串中的字符进行替换? 问题答案: 您甚至不需要使用或,您可以使用以下命令: 您可以使用以下方法进行测试:

  • 问题内容: 我想替换列中的子字符串 到。 需求输出 我尝试,但它返回。 问题答案: 使用与更换和:

  • 问题内容: 我想使用函数替换多个字符串。 我目前有 但想有类似的东西 虽然那听起来不像是好的语法 正确的方法是什么?有点像如何在中进行操作\1以及\2如何将字段替换为某些搜索字符串 问题答案: 这是一个简短的示例,应该使用正则表达式来解决问题: 例如: ’() and –text–‘