C# 字符串查找和替换

C# 字符串查找和替换,c#,C#,我有一根像 string text="~aaa~bbb~ccc~bbbddd"; 输入值将为:bbb 因此,在上面的字符串中,我应该删除值“~bbb” 结果字符串应为 text="~aaa~ccc~bbbddd"; 我不知道你想做什么,但如果我有,你可以这样做: private string ReplaceFirstOccurrence(string Source, string Find, string Replace) { int Place = Source.IndexOf(Find

我有一根像

string text="~aaa~bbb~ccc~bbbddd";
输入值将为:bbb

因此,在上面的字符串中,我应该删除值“~bbb”

结果字符串应为

text="~aaa~ccc~bbbddd";

我不知道你想做什么,但如果我有,你可以这样做:

private string ReplaceFirstOccurrence(string Source, string Find, string Replace)
{
 int Place = Source.IndexOf(Find);
 string result = Source.Remove(Place, Find.Length).Insert(Place, Replace);
 return result;
}

var result =ReplaceFirstOccurrence(text,"~"+input,"");

我不知道你想做什么,但如果我有,你可以这样做:

private string ReplaceFirstOccurrence(string Source, string Find, string Replace)
{
 int Place = Source.IndexOf(Find);
 string result = Source.Remove(Place, Find.Length).Insert(Place, Replace);
 return result;
}

var result =ReplaceFirstOccurrence(text,"~"+input,"");
一种方法是:

string text = "~aaa~bbb~ccc~bbbddd";
string newStr = string.Join("~", text.Split('~').Where(r => r != "bbb"));

但是,如果考虑到性能,那么考虑其他的解决方案

< P>一种方式是:

string text = "~aaa~bbb~ccc~bbbddd";
string newStr = string.Join("~", text.Split('~').Where(r => r != "bbb"));

但是如果性能是考虑的话,那么考虑其他的解决方案

< P>这应该是个窍门:

string searchValue = "bbb";
text = text.Replace(String.Format("~{0}~", searchValue), "~");

一定要同时搜索结尾字符~否则也会替换~bbbddd的一部分。

这应该可以做到:

string searchValue = "bbb";
text = text.Replace(String.Format("~{0}~", searchValue), "~");

请务必同时搜索结尾字符,否则也将替换~bbbddd的一部分。

您可以在c#中使用正则表达式@“\bMYWORDTOREPLACE\b”;这将是

using System.Text.RegularExpressions;

myString = Regex.Replace(myString, @"\bbbb\b", "", RegexOptions.IgnoreCase);

您可以在c#中使用正则表达式@“\bMYWORDTOREPLACE\b”;这将是

using System.Text.RegularExpressions;

myString = Regex.Replace(myString, @"\bbbb\b", "", RegexOptions.IgnoreCase);
像这样

string str = "~rajeev~ravi";
string strRemove = "rajeev";
string strNew =str.Replace("~"+strRemove ,"");
像这样

string str = "~rajeev~ravi";
string strRemove = "rajeev";
string strNew =str.Replace("~"+strRemove ,"");
公共静态字符串替换(此字符串str,char[]chars,字符串替换)
{
StringBuilder输出=新StringBuilder(str.Length);
bool-replace=false;
如果(字符长度-1<1)
{
对于(int i=0;i0)
{
j++;
}
如果(j>字符长度-1)
{
j=0;
}
if(truecount==字符长度)
{
output.Remove(output.Length-chars.Length+1,chars.Length-1);
//输出。移除(4,2);
如果(更换)
输出。追加(替换);
其他的
输出追加(c1);
}
其他的
{
输出追加(c1);
}
}
}
返回output.ToString();
}
静态void Main(字符串[]参数)
{
Console.WriteLine(“输入单词”);
字符串字=(Console.ReadLine());
Console.WriteLine(“输入要查找的单词”);
字符串find=(Console.ReadLine());
Console.WriteLine(“输入要替换的单词”);
字符串Rep=(Console.ReadLine());
WriteLine(替换(word,find.tocharray(),Rep));
Console.ReadLine();
}
}

公共静态字符串替换(此字符串str,char[]chars,字符串替换)
{
StringBuilder输出=新StringBuilder(str.Length);
bool-replace=false;
如果(字符长度-1<1)
{
对于(int i=0;i0)
{
j++;
}
如果(j>字符长度-1)
{
j=0;
}
if(truecount==字符长度)
{
output.Remove(output.Length-chars.Length+1,chars.Length-1);
//输出。移除(4,2);
如果(更换)
输出。追加(替换);
其他的
输出追加(c1);
}
其他的
{
输出追加(c1);
}
}
}
返回output.ToString();
}
静态void Main(字符串[]参数)
{
Console.WriteLine(“输入单词”);
字符串字=(Console.ReadLine());