删除字符串的一部分,只知道该部分的开始和结束

本文关键字:该部 开始 结束 字符串 一部分 删除 | 更新日期: 2023-09-27 18:07:51

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

我有这个字符串:

文件名称= " Unstuck20140608124131432.txt "路径="Unstuck20140608124131432.txt"状态="已通过"持续时间="0.44"

我想把Path属性从它里面去掉,所以它看起来像这样:

文件名="Unstuck20140608124131432.txt"状态="已通过"时间= " 0.44 ">

p>我不知道路径的长度,也不知道路径的" "里面有多少字符。

我该怎么做呢?

删除字符串的一部分,只知道该部分的开始和结束

可以使用正则表达式。替换

string input = @"File Name=""Unstuck20140608124131432.txt"" Path=""Unstuck20140608124131432.txt"" Status=""Passed"" Duration=""0.44""";
var output = Regex.Replace(input, @"Path='"".+?'""", "");

对于非正则表达式爱好者,您可以使用split命令。(不反对正则表达式。这是程序员均衡饮食的重要组成部分。

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];

根据模式的开头将字符串分成2部分(Path=")。以第一部分为例。根据模式的结尾将第二部分分成2部分。取第二部分