2016-09-20 251 views
-4

我有類似「abc-def-gef」的字符串。我需要從「 - 」中刪除字符串的第一部分,並得到最後一部分,如「def-gef」。如何在C#中可能。請幫我找出解決方案。拆分並獲得c中字符串的最後部分#

謝謝。

+2

你嘗試過什麼?一種方法:'String.Join(「 - 」,str.Split(' - ')。Skip(1))' –

+0

[正則表達式示例](https://dotnetfiddle.net/0YQA99) –

回答

3

這裏:

string str = "abc-def-gef"; 
str = str.Substring(str.IndexOf("-")+1); 

IndexOf("-")將在第一的指數迴歸「 - 」和Substring將削減從指數字符串(+1跳過「 - 」)到字符串的結尾

+0

它的工作原理!謝謝:-) –

1

正如亞歷克斯說,你可以結合使用SubstringLastIndexOf

var str = "abc-def-gef"; 
    var newStr = str.Substring(str.LastIndexOf("-") + 1); //returns gef 

var str = "abc-def-gef"; 
    var newStr = str.Substring(str.IndexOf("-") + 1); //returns def-gef 
+0

謝謝...... –

-2

這樣的事情。請正確語法相同:

string inpt = "abc-def-gef"; 
string[] arr = inp.Split('-'); 
string result = arr[1] + "-" +arr[2]; 
1

這是一個簡單的方法,我會做,如果你總是希望最後一個和分隔符始終是「 - 」。

var myString = "abc-def-gef"; 

var result = myString.Split('-').Last(); 

輸出: 「全球環境基金」

var result2 = myString.Split('-').Skip(1).Take(2); 

輸出:的 「全球環境基金」 一個IEnumerable 「高清」