나는 Dictionary<string, int>
을 가지고 있으며 목록에서 일부 문자열을 읽고 있습니다 ... 사전에 추가하고 싶지만 사전에 문자열이 이미 있으면 값을 1 씩 증가 시키길 원합니다사전 <string, int> 증가 값
시도한 코드는 다음과 같습니다. 그러나 모든 입력에 따라 증가하는 일부 문자열이 있습니다. 문제가 있습니까?
Dictionary<string, int> dictionary = new Dictionary<string, int>();
foreach (String recordline in tags)
{
String recordstag = recordline.Split('\t')[1];
String tagToDic = recordstag.Substring(0, (recordstag.Length-1));
if (dictionary.ContainsKey(tagToDic) == false)
{
dictionary.Add(tagToDic, 1);
}
else
{
try
{
dictionary[tagToDic] = dictionary[tagToDic] + 1;
}
catch (KeyNotFoundException ex)
{
System.Console.WriteLine("X" + tagToDic + "X");
dictionary.Add(tagToDic, 1);
}
}
}
편집 : 그것은 항상 빈 공간이기 때문에 문자열의 마지막 문자를 제거하고 ... 당신의 의견에 대답하기 위해 ... 내 입력은 같은 것입니다 :
10000301 business 0 0,000
10000301 management & auxiliary services 0 0,000
10000316 demographie 0 0,000
10000316 histoire de france 0 0,000
10000347 economics 0 0,000
10000347 philosophy 1 0,500
와 나는 "비즈니스"또는 "관리 & 보조 서비스"등의 문자열 만 원할 수 있습니다.
그것은 가치가 무엇인지, 당신이 당신의 코드를 정리할 수 있습니다 들어 * 많은 * : http://codepad.org/3DD4H1zl – Ryan
샘플 입력 보고있는 동작을 나타내는 문자열? –
질문을 명확히하기 위해 조작하려는 문자열의 예를 들어주십시오. – lafama