Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/293.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何用正则表达式替换此模式?_C#_Regex - Fatal编程技术网

C# 如何用正则表达式替换此模式?

C# 如何用正则表达式替换此模式?,c#,regex,C#,Regex,我需要将字符串中模式src=”“的所有匹配项中的所有/替换为\ 也就是说,模式以src=“开始,以”结束 字符串中可能有多个匹配项 我试过这个,但不匹配: "src=\"^*\"$" 您的字符串是否总是以结束“”结尾?如果不是,请删除您可以使用的$! String input = @"...src=""/foo/bar"".."; String output = Regex.Replace(input, "src=\"[^\"]*\"", (m) => m.ToString().Repl

我需要将字符串中模式
src=”“
的所有匹配项中的所有
/
替换为
\

也就是说,模式以
src=“
开始,以
结束

字符串中可能有多个匹配项

我试过这个,但不匹配:

"src=\"^*\"$"

您的字符串是否总是以结束“”结尾?如果不是,请删除您可以使用的$!

String input = @"...src=""/foo/bar""..";
String output = Regex.Replace(input, "src=\"[^\"]*\"", (m) => m.ToString().Replace('/', '\\'));

+1谢谢!它可以工作,但是我们怎么能把\当作转义字符呢?我试过这样做(斜杠将以另一种方式替换):字符串输入=@“…src=”“/foo/bar”“…;字符串输出=Regex.Replace(输入,“src=\”[^\“]*\”,(m)=>m.ToString().Replace(“/”,“\”);它产生了output=“…src=\”\\foo\\bar\”。@HappyCoder4U:这不是您想要的输出吗?=)这里有两个后斜杠,因为一个后斜杠就是逃逸字符。Console.Write(输出)将导致
.src=“\foo\bar”…
Oops。你说得对。我只是感到困惑:)谢谢你的帮助。