从字符串中解析单词

时间:2016-11-09 20:34:53

标签: c#

我需要解析从NHRM__Location__cLocation的字符串。我觉得自己很愚蠢,因为这不是我的第一次牛仔竞技表演。我不想在数组中添加代码。 NHRM是一个名称空间,可能会根据使用者的名称而改变,因此在某些时候它将成为app.config文件中的一个键。

我正在考虑将__上的字符串拆分,然后将其余部分加载到字符数组中并修剪掉那个人,但我觉得我可能会因为复杂化而烦恼。

2 个答案:

答案 0 :(得分:3)

我已经使用此代码将其放入.Net Fiddle

using System;

public class Program
{
    public static void Main()
    {
        string stringToSplit = "NHRM__Location__c"; // 2 underscores in each location
        char[] sep = new char[] {'_', '_'};
        string newString = stringToSplit.Split(sep)[2];

        Console.WriteLine(newString);
    }
}

我知道这与第一个答案类似,但我只是想证明[2]确实有效,至少在我的.Net小提琴中是这样。

我希望这有帮助!

<强>更新

  

System.String

     

返回值 - 一个数组,其元素包含此实例中由分隔符中的一个或多个字符分隔的子字符串

因此,如果我要将代码更改为[4],那么它将只返回c ..而[0]将返回NHRM ..数组值不包括分隔符

答案 1 :(得分:1)

使用此:

string sample = "NHRM__Location__c";
Console.WriteLine(sample.Split('_')[2]);