如何从ac#string中替换特定字符?

raz*_*zzv 1 c# string replace

如果我有一个字符串:"user:jim; id:23; group:49st;" 如何用其他东西替换组代码(第49个),以便显示:"user:jim; id = 23; group:76pm;"

对不起,如果问题很简单,但我没有找到具体的答案,只是与我不同的情况.

Alf*_*cre 7

您可以像这样使用"group"的索引

string s = "user:jim;id:23;group:49st;";
string newS = s.Substring(0,s.IndexOf("group:") + 6);
string restOfS = s.IndexOf(";",s.IndexOf("group:") + 6) + 1 == s.Length 
? "" 
: s.Substring(s.IndexOf(";",s.IndexOf("group:") + 6) + 1);
newS += "76pm;";
s = newS + restOfS;
Run Code Online (Sandbox Code Playgroud)

带有的线s = criteria ? true : false基本上是一个if,但它使用三元运算符放在一行上.

或者,如果您知道已经存在的文本以及应该替换的文本,您可以使用 Replace

s = s.Replace("49st","76pm");
Run Code Online (Sandbox Code Playgroud)

作为一个额外的预防措施,如果你并不总是在字符串中有这个"group:"部分,为了避免错误,请将其置于if首先检查

if(s.Contains("group:"))
{
    //Code
}
Run Code Online (Sandbox Code Playgroud)