查找并替换字符串中的内容(C#)

时间:2011-11-15 22:05:19

标签: c# string parsing string-parsing replace

以下字符串来自DIV标记。所以我附上了下面的值。

String cLocation = "'target="_blank'></a><img alt='testimage.jpg' src='/SPECIMAGE/testimage.jpg'"

我想通过"src="/"更改"src='xyz/files'"来替换上面的字符串。

我尝试了典型的string.Replace("old","new"),但它没有用。

我试过以下,

cNewLocation ="xyz/files";
cNewString = cLocation.Replce("src='/'", "src='" + cNewLocation + "'/")

它不起作用。

请建议。

4 个答案:

答案 0 :(得分:2)

您可以尝试查看c#中的Replace命令。

所以mystring = srcstring.Replace("old", "New");

http://msdn.microsoft.com/en-us/library/system.string.replace%28v=vs.71%29.aspx

可以用/

替换字符串中的//

答案 1 :(得分:2)

如果我理解你在问什么,可以使用正则表达式替换字符串,如下所示:

var cNewString = Regex.Replace(cLocation, @"src='/.*/", "src='" + newLocation + "/");

编辑:我修改了正则表达式,将src='/.../替换为src='{newLocation}/

答案 2 :(得分:1)

您可以执行以下操作:

string cLocation = "'target='_blank'></a><img alt='testimage.jpg' src='/SPECIMAGE/testimage.jpg'";
cLocation = cLocation.Replace("src='/'", "src='xyz/files'");

答案 3 :(得分:1)

这解决了问题:

int start = cLocation.IndexOf("src='") + 5;
int end = cLocation.LastIndexOf("'");
string xcLocation = cLocation.Remove(start, end - start);
string cLocation = xcLocation.Insert(start , "xyz/files");