C#仅知道部分开始和结束的情况下移除部分字符串

C#仅知道部分开始和结束的情况下移除部分字符串,c#,string,C#,String,这是我想要完成的实际例子: 我有这个字符串: 文件名=“Unstuck20140608124131432.txt” Path=“Unstuck20140608124131432.txt”Status=“Passed”Duration=“0.44” 我想从中剪切“Path”属性,因此它将如下所示: File Name=“Unstuck20140608124131432.txt”Status=“已通过” 持续时间=“0.44” 我对路径的长度或路径“”中的字符一无所知 我怎样才能做到呢?你可以使用

这是我想要完成的实际例子:

我有这个字符串:

文件名=“Unstuck20140608124131432.txt” Path=“Unstuck20140608124131432.txt”Status=“Passed”Duration=“0.44”

我想从中剪切“Path”属性,因此它将如下所示:

File Name=“Unstuck20140608124131432.txt”Status=“已通过” 持续时间=“0.44”

我对路径的长度或路径“”中的字符一无所知

我怎样才能做到呢?

你可以使用


对于非regex粉丝,可以使用split命令。(不反对正则表达式。它是平衡编程饮食的重要组成部分。)

根据模式的开头将字符串分成两部分(Path=“)。 以第一部分为例。
根据图案的结尾(“)将第二部分拆分为两部分。以第二部分为例。

看起来您正在尝试使用正则表达式处理XML。如果是这样的话,你最好改用。
string input = @"File Name=""Unstuck20140608124131432.txt"" Path=""Unstuck20140608124131432.txt"" Status=""Passed"" Duration=""0.44""";
var output = Regex.Replace(input, @"Path=\"".+?\""", "");
var input = "File Name=\"Unstuck20140608124131432.txt\" Path=\"Unstuck20140608124131432.txt\" Status=\"Passed\" Duration=\"0.44\"";

var tmp = input.Split(new[] { "Path=\"" }, 2, StringSplitOptions.None);

var result = tmp[0] + tmp[1].Split(new[] { '"' }, 2)[1];