如何用字符串替换字符串中的字符
本文关键字:字符串 字符 替换 何用 | 更新日期: 2023-09-27 18:25:46
在下面的例子中,我有一个字符串,其中管道|
分隔字符串中的每个段(即:0123456789)。我要做的是用字符串替换管道字符,如下例所示。我该如何做到这一点?
据我所知,.Replace
只能支持(char,char)
或(string, string)
。
示例代码:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ConsoleProject
{
public class Program
{
public static void Main(string[] args)
{
String val1 = "0123456789|0123456789|0123456789|0123456789|0123456789";
val1.Replace('|'.ToString(), "*val1TEST*");
String val2 = "0123456789|0123456789|0123456789|0123456789|0123456789";
val2.Replace("|", "**val2Test**");
Console.WriteLine(String.Format("{0}{1}","val1: ",val1));
Console.WriteLine(String.Format("{0}{1}", "val2: ", val2));
}
}
}
来自控制台的输出
val1: 0123456789|0123456789|0123456789|0123456789|0123456789
val2: 0123456789|0123456789|0123456789|0123456789|0123456789
如果你查看.Replace()
的定义,它会返回一个字符串,所以你需要将它设置为一个变量,比如:
val1 = val1.Replace('|'.ToString(), "*val1TEST*");
您遇到的问题是Replace()
返回一个字符串。它不会修改现有的字符串。您需要将字符串设置为返回值:
str = str.Replace(...);
此外,具有一个字符的字符串与单个字符相同,这就是为什么没有Replace(char, string)
的原因。