2014-06-08 48 views
0

這是我所要完成實際的例子:C#刪除與部分開始只有知識和結束字符串的一部分

我有這個字符串:

文件名=「Unstuck20140608124131432 .TXT」 PATH = 「Unstuck20140608124131432.txt」 狀態= 「通過」 時間= 「0.44」

,我想削減 「從中路徑」 屬性,因此它看起來就像這樣:

文件名=「Unstuck20140608124131432.txt」狀態=「通過」 持續時間=「0.44」

我不知道任何關於路徑的長度或字符裏面的「的」路徑。

我該如何實現它?

+0

它看起來像你試圖操縱XML使用正則表達式。如果是這樣,您可以使用[XDocument](http://msdn.microsoft.com/en-us/library/system.xml.linq.xdocument.aspx)更好。 –

回答

2

您可以使用Regex.Replace

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

而對於你非正則表達式的球迷在那裏,你可以使用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部分。拿第二部分。