2017-08-03 46 views
-1

您好我想修剪字符串得到C#中的特定字符串和装饰价值

IWF01 - STSD Campus | 1009432 | Posted Today

我需要得到这个字符串1009432
或者像这样

ROS03 - Roseville, CA R-3, More... | T_R_1624621 | Posted Today

我想这一个T_R_1624621

如何获取字符串的部分?

+2

你能告诉我们你已经试过了吗? – Sefe

+0

在你的例子中选择元素的规则是什么?这是非常关键的一点!请不要让人们猜测,只是为了最终发现第三个例子与首先想到的不同。 –

+0

,因为每个ID都是独特的,不同的,这就是为什么我包括第二个,我仍然没有任何代码可用于此 – Gorhell

回答

0
string s = "ROS03 - Roseville, CA R-3, More... | T_R_1624621 | Posted Today"; 
var strArr = s.Split('|'); 
string yourValue = strArr[1].Trim(); 

请注意,这可能会导致一些例外。如果你不有权字符串(可通过|劈裂,或者如果你有串有等..

+0

这件作品完美无瑕谢谢! – Gorhell

0

我做的第一件事就是分割字符串,那么我只有一个|获得第2项(前提是有足够的项目)

下面是一个会做你需要什么(请记住,如果没有足够的项目将不会产生异常)的函数:

string GetFieldTrimmed(string input, char separator, int fieldIndex) 
{ 
    var strSplitArray = input.Split(separator); 
    return strSplitArray.Length >= fieldIndex + 1 
     ? strSplitArray[fieldIndex].Trim() 
     : ""; 
} 

示例用法:

var fieldVal = GetFieldTrimmed("ROS03 - Roseville, CA R-3, More... | T_R_1624621 | Posted Today", '|', 1);