Sha256: 3a69114db672c9a60c23ab38f1a0863bacded1d8a9136b3fca982e9492584248

Contents?: true

Size: 665 Bytes

Versions: 115

Compression:

Stored size: 665 Bytes

Contents

using System;
using System.Text.RegularExpressions;
using System.Collections.Generic;

public class Phrase
{
    public static IDictionary<string, int> WordCount(string phrase)
    {
        if (phrase == null) throw new ArgumentNullException("phrase");

        var counts = new Dictionary<string, int>();
        Match match = Regex.Match(phrase.ToLower(), @"\w+'\w+|\w+");
        while(match.Success)
        {
            string word = match.Value;
            if(!counts.ContainsKey(word))
            {
                counts[word] = 0;
            }
            counts[word]++;
            match = match.NextMatch();
        }
        return counts;
    }
}

Version data entries

115 entries across 115 versions & 1 rubygems

Version Path
trackler-2.0.8.14 tracks/csharp/exercises/word-count/Example.cs
trackler-2.0.8.13 tracks/csharp/exercises/word-count/Example.cs
trackler-2.0.8.12 tracks/csharp/exercises/word-count/Example.cs
trackler-2.0.8.11 tracks/csharp/exercises/word-count/Example.cs
trackler-2.0.8.10 tracks/csharp/exercises/word-count/Example.cs
trackler-2.0.8.9 tracks/csharp/exercises/word-count/Example.cs
trackler-2.0.8.8 tracks/csharp/exercises/word-count/Example.cs
trackler-2.0.8.7 tracks/csharp/exercises/word-count/Example.cs
trackler-2.0.8.6 tracks/csharp/exercises/word-count/Example.cs
trackler-2.0.8.5 tracks/csharp/exercises/word-count/Example.cs
trackler-2.0.8.4 tracks/csharp/exercises/word-count/Example.cs
trackler-2.0.8.3 tracks/csharp/exercises/word-count/Example.cs
trackler-2.0.8.2 tracks/csharp/exercises/word-count/Example.cs
trackler-2.0.8.1 tracks/csharp/exercises/word-count/Example.cs
trackler-2.0.7.0 tracks/csharp/exercises/word-count/Example.cs
trackler-2.0.6.44 tracks/csharp/exercises/word-count/Example.cs
trackler-2.0.6.43 tracks/csharp/exercises/word-count/Example.cs
trackler-2.0.6.42 tracks/csharp/exercises/word-count/Example.cs
trackler-2.0.6.41 tracks/csharp/exercises/word-count/Example.cs
trackler-2.0.6.40 tracks/csharp/exercises/word-count/Example.cs