예제 #1
0
        static Dictionary <string, List <Hova> > BeLefele(string fájlnév)
        {
            Dictionary <string, List <Hova> > élnyilvántartás = new Dictionary <string, List <Hova> >();

            using (StreamReader f = new StreamReader(fájlnév))
            {
                string sor;
                string tartalmazó;
                while (!f.EndOfStream)
                {
                    sor        = f.ReadLine();
                    tartalmazó = Regex.Match(sor, @"^(.*) bags contain").Groups[1].ToString();
                    if (Regex.Match(sor, @"^.*? bags contain no other bags.$").Success)
                    {
                        élnyilvántartás.Add(tartalmazó, new List <Hova> {
                        });
                    }
                    else
                    {
                        Hova él;
                        foreach (Match tartalmazott in Regex.Matches(sor, @"(\d) (\w+ \w+) bag"))
                        {
                            él = new Hova(tartalmazott.Groups[2].ToString(), int.Parse(tartalmazott.Groups[1].ToString()));
                            if (élnyilvántartás.ContainsKey(tartalmazó))
                            {
                                élnyilvántartás[tartalmazó].Add(él);
                            }
                            else
                            {
                                élnyilvántartás.Add(tartalmazó, new List <Hova> {
                                    él
                                });
                            }
                        }
                    }
                }
            }
            return(élnyilvántartás);
        }
예제 #2
0
        static Dictionary <string, List <Hova> > BeFelfele(string fájlnév)
        {
            Dictionary <string, List <Hova> > élnyilvántartás = new Dictionary <string, List <Hova> >();

            using (StreamReader f = new StreamReader(fájlnév))
            {
                string sor;
                string tartalmazó;
                string honnan;
                Hova   él;
                while (!f.EndOfStream)
                {
                    sor        = f.ReadLine();
                    tartalmazó = Regex.Match(sor, @"^(.*) bags contain").Groups[1].ToString();
                    foreach (Match tartalmazott in Regex.Matches(sor, @"(\d) (\w+ \w+) bag"))
                    {
                        honnan = tartalmazott.Groups[2].ToString();
                        él     = new Hova(tartalmazó, int.Parse(tartalmazott.Groups[1].ToString()));
                        if (!élnyilvántartás.ContainsKey(él.hova))
                        {
                            élnyilvántartás.Add(él.hova, new List <Hova> {
                            });
                        }
                        if (élnyilvántartás.ContainsKey(honnan))
                        {
                            élnyilvántartás[honnan].Add(él);
                        }
                        else
                        {
                            élnyilvántartás.Add(honnan, new List <Hova> {
                                él
                            });
                        }
                    }
                }
            }
            return(élnyilvántartás);
        }