コード例 #1
0
ファイル: SoundExDictionary.cs プロジェクト: rbirkby/soundex
        /// <summary>
        /// Factory method for creating a SoundEx dictonary using any of the
        /// SoundEx implementations available
        /// </summary>
        /// <param name="stream">The stream.</param>
        /// <param name="soundex">The type of soundex algorithm.</param>
        /// <returns></returns>
        public static SoundExDictionary CreateCustomDictionary(Stream stream, SoundEx soundex)
        {
            var custom = new CustomDictionary(soundex);
            var reader = new StreamReader(stream);

            Console.Write("Loading");

            string line = reader.ReadLine();

            do
            {
                if (custom.WordCount % 1000 == 0)
                    Console.Write(".");

                custom.AddWord(line);
                line = reader.ReadLine();
            }
            while (line != null);

            Console.WriteLine();

            Console.WriteLine("Number of words loaded: " + custom.WordCount);
            Console.WriteLine("Number of unique SoundEx values: " + custom.SoundExGroups);

            return custom;
        }
コード例 #2
0
        /// <summary>
        /// Factory method for creating a SoundEx dictonary using any of the
        /// SoundEx implementations available
        /// </summary>
        /// <param name="stream">The stream.</param>
        /// <param name="soundex">The type of soundex algorithm.</param>
        /// <returns></returns>
        public static SoundExDictionary CreateCustomDictionary(Stream stream, SoundEx soundex)
        {
            var custom = new CustomDictionary(soundex);
            var reader = new StreamReader(stream);

            Console.Write("Loading");

            string line = reader.ReadLine();

            do
            {
                if (custom.WordCount % 1000 == 0)
                {
                    Console.Write(".");
                }

                custom.AddWord(line);
                line = reader.ReadLine();
            }while (line != null);

            Console.WriteLine();

            Console.WriteLine("Number of words loaded: " + custom.WordCount);
            Console.WriteLine("Number of unique SoundEx values: " + custom.SoundExGroups);

            return(custom);
        }
コード例 #3
0
 public new void uiEventDelegate(GameObject go)
 {
     if (go.name == "logo")
     {
         SoundEx.playSound("logo");
     }
 }
コード例 #4
0
ファイル: SoundExTest.cs プロジェクト: formist/LinkMe
 public void TestStatic()
 {
     Assert.AreEqual("T522", SoundEx.GenerateSoundEx("Tymczak"));
     Assert.AreEqual("A226", SoundEx.GenerateSoundEx("Ashcraft"));
     Assert.AreEqual("P123", SoundEx.GenerateSoundEx("Pfister"));
     Assert.AreEqual("J250", SoundEx.GenerateSoundEx("Jackson"));
     Assert.AreEqual("G362", SoundEx.GenerateSoundEx("Gutierrez"));
     Assert.AreEqual("V532", SoundEx.GenerateSoundEx("VanDeusen"));
     Assert.AreEqual("D250", SoundEx.GenerateSoundEx("Deusen"));
 }
コード例 #5
0
ファイル: SoundExTest.cs プロジェクト: formist/LinkMe
        private static void CheckAgainstSqlServer(string text, IDbCommand command)
        {
            string codeSoundEx = SoundEx.GenerateSoundEx(text);

            ((IDbDataParameter)command.Parameters["@s"]).Value = text;
            var sqlSoundEx = (string)command.ExecuteScalar();

            Assert.AreEqual(sqlSoundEx, codeSoundEx, "SoundEx comparison failed for string"
                            + " '{0}': generated value was '{1}', but SQL server returned '{2}'.",
                            text, codeSoundEx, sqlSoundEx);
        }
コード例 #6
0
 public CustomDictionary(SoundEx soundEx)
 {
     _soundExStrategy = soundEx;
 }
コード例 #7
0
        private void StringMatchKeyTest(string[] testCases)
        {
            Debug.WriteLine("EditexKey");
            StringPhoneticKeyBuilder keyBuilder = new EditexKey();

            foreach (var name in testCases)
            {
                string key = keyBuilder.BuildKey(name);
                Debug.WriteLine("\t{0} for {1}", key, name);
            }

            Debug.WriteLine("DaitchMokotoff");
            StringPhoneticKeyBuilder keyBuilder2 = new DaitchMokotoff();

            foreach (var name in testCases)
            {
                string key = keyBuilder2.BuildKey(name);
                Debug.WriteLine("\t{0} for {1}", key, name);
            }

            Debug.WriteLine("Phonix");
            StringPhoneticKeyBuilder keyBuilder3 = new Phonix();

            foreach (var name in testCases)
            {
                string key = keyBuilder3.BuildKey(name);
                Debug.WriteLine("\t{0} for {1}", key, name);
            }

            Debug.WriteLine("SoundEx");
            StringPhoneticKeyBuilder keyBuilder4 = new SoundEx();

            foreach (var name in testCases)
            {
                string key = keyBuilder4.BuildKey(name);
                Debug.WriteLine("\t{0} for {1}", key, name);
            }

            Debug.WriteLine("SimpleTextKey");
            StringPhoneticKeyBuilder keyBuilder5 = new SimpleTextKey();

            foreach (var name in testCases)
            {
                string key = keyBuilder5.BuildKey(name);
                Debug.WriteLine("\t{0} for {1}", key, name);
            }

            Debug.WriteLine("Metaphone");
            StringPhoneticKeyBuilder keyBuilder6 = new Metaphone();

            foreach (var name in testCases)
            {
                string key = keyBuilder6.BuildKey(name);
                Debug.WriteLine("\t{0} for {1}", key, name);
            }

            Debug.WriteLine("DoubleMetaphone");
            StringPhoneticKeyBuilder keyBuilder7 = new DoubleMetaphone();

            foreach (var name in testCases)
            {
                string key = keyBuilder7.BuildKey(name);
                Debug.WriteLine("\t{0} for {1}", key, name);
            }
        }
コード例 #8
0
 public void DifferenceTest() => Assert.Equal(4, SoundEx.Difference("fereri", "Ferrari"));
コード例 #9
0
        public void SoundExTest(string input, string expected)
        {
            var actual = SoundEx.Encode(input);

            Assert.Equal(expected, actual);
        }