如何用多个字符替换一个字符c#

如何用多个字符替换一个字符c#,c#,string,replace,character,C#,String,Replace,Character,我正在为我的考试做一些示例,我发现用其他字符串替换字符串有问题。我知道如何将字符串中的一个字符替换为其他字符或还原字符串 我们有一根绳子 s="*****\n***\n****" 我们需要用“asd”替换所有的“*”,它应该是这样的 s="asdas\ndas\ndasd" 这听起来像是家庭作业,我们避免提供完整的代码。对你来说,自己编写代码是很重要的。但归根结底是 在字符串上写入,直到用完“*”字符: 将第一个“*”替换为“a” 将第一个“*”替换为“s” 将第一个“*”替换为“d” 在

我正在为我的考试做一些示例,我发现用其他字符串替换字符串有问题。我知道如何将字符串中的一个字符替换为其他字符或还原字符串

我们有一根绳子

 s="*****\n***\n****"
我们需要用“asd”替换所有的“*”,它应该是这样的

s="asdas\ndas\ndasd"

这听起来像是家庭作业,我们避免提供完整的代码。对你来说,自己编写代码是很重要的。但归根结底是

在字符串上写入,直到用完“*”字符:

  • 将第一个“*”替换为“a”
  • 将第一个“*”替换为“s”
  • 将第一个“*”替换为“d”
  • 在1点重新启动

  • 字符串有一点很重要:字符串是不可变的。不能修改字符串,只能创建一个具有不同值的字符串。每次替换都会在内存中创建一个新的死字符串。对于这个范围来说并不重要,但对于任何更大的范围来说都可能。考虑改变一个字符[]或String Bu建器,而不是一个原始字符串,重新创建一个字符串。

    < P>一个可能的方法是写一个for循环并检查这个字符是否是“代码> */COD>”。p> 使用模
    %
    查看替换所需的字符,并使用a添加字符

    比如说

    string s="*****\n***\n****";
    StringBuilder sb = new StringBuilder();
    string subj = "asd";
    int counter = 0;
    for (int i = 0; i < s.Length; i++) {
        if (s[i] == '*') {
            sb.Append(subj[counter % subj.Length]);                        
            counter++;
            continue;
        }
        sb.Append(s[i]);
    }
    Console.WriteLine(sb.ToString());
    

    1。有一个内容为“asd”的字符数组“repalcement”。2.一个字母一个字母地写下字符串。3.如果点击“*”,则写入替换[i]。4.增加一。如果您在更换结束时,请将i设置为0。非常感谢,它工作得非常好。我第一次看到这种情况。
    asdas
    das
    dasd