从C#中的给定String中分离子字符串

时间:2016-04-29 04:50:48

标签: c# string

我有字符串数组可以说

{"Item Revision","Integer Item Revision","Double Item Revision"}

我只想排除字符串的"revision"部分。

让我们说如果我有"Integer Item Revision"字符串,那么我只想要"Integer Item"。这里"Revision"部分对于所有字符串都是通用的。它有什么解决方案吗?

4 个答案:

答案 0 :(得分:7)

var array = new[] {"Item Revision","Integer Item Revision","Double Item Revision"};

array = array.Select(o=>o.Replace("Revision",string.Empty).Trim()).ToArray();

OR

var array = new[] {"Item Revision NotRevision"};
Regex rgx = new Regex(@"\bRevision\b");
array = array.Select(o=>rgx.Replace(o,string.Empty).Trim()).ToArray();

答案 1 :(得分:4)

var result = "Item Revision".Replace(" Revision", "");

剥离"修订"和领先的空间。

答案 2 :(得分:4)

可用于:

 String[] s = { "Item Revision", "Integer Item Revision", "Double Item Revision" };
            String[] tmp = new String[s.Length];
            for (int i = 0; i < s.Length; i++)
            {
                tmp[i] = s[i].Replace("Revision", "");
            }

答案 3 :(得分:3)

一个小例子。 https://dotnetfiddle.net/vwJBkn

如果您确切地知道要删除的字符串,则使用string.replace将起作用。

string[] array = new[] {"Item Revision","Integer Item Revision","Double Item Revision"};
    foreach (string i in array)
    {
//Replace console.writeline with your code. 
        Console.WriteLine (i.Replace("Revision", String.Empty));
    }