Avatar
Paranormal
Redaktor
Avatar
Paranormal:

Zdravím, potřeboval bych poradit. Hledal sem na internetu ale nenašel sem nic co bych potřeboval :/

Jedná se o to že mám seznam slov v textovém souboru. A já bych potřeboval po napsání třeba písmena A a zmáčknutí tlačítka aby se mi vygeneroval z toho souboru seznam slov která začínají na písmeno A. Nebo potom více možností třeba slova která obsahují A, nebo nějakou frázi.

Bych bych rád kdyby mi někdo pomohl. Díky moc.. ;)

Odpovědět 27.7.2015 0:12
„Když toho moc neumíme tak jsme na nejlepší pozici se něčemu naučit.“
Avatar
Paranormal
Redaktor
Avatar
Odpovídá na Paranormal
Paranormal:

A taky když už sme u té práce s textem tak taky něco že nahradím všechny písmena J písmenama K. Například ;) Díky moc.

Nahoru Odpovědět 27.7.2015 0:28
„Když toho moc neumíme tak jsme na nejlepší pozici se něčemu naučit.“
Avatar
Odpovídá na Paranormal
Michal Štěpánek:

To jsi asi moc tomu hledání nedal, všechno je tady na síti. Zkus se mrknout na LINQ (první otázka) a taky na "Replace" (druhá otázka)

Nahoru Odpovědět  +1 27.7.2015 1:04
Nikdy neříkej nahlas, že to nejde. Vždycky se totiž najde blbec, který to neví a udělá to...
Avatar
vodslon
Člen
Avatar
Odpovídá na Paranormal
vodslon:

Ahoj je to udělané dost strašně, ale abys viděl co je Linq a jak to může fungovat, ten převod do List<string> je zbytečný, ale já dávám vše do Listu :-). Kdyby si chtěl změnit třeba obsahuje za začíná, tak v linqu změníš jenom Contains za StartWith.. nahrazení slova nebo znaku se dělá pomocí Replace()...

Jsou to WF a potřebuje dva Textboxy

List<string> listWords;
       private void txtInput_TextChanged(object sender, EventArgs e)
       {
           txtOutput.Text = "";

           string find = txtInput.Text;

           var finds = from s in listWords where s.Contains(find) select s;

           foreach(string s in finds)
           {
               txtOutput.Text += s + Environment.NewLine;
           }
       }

       private void Form1_Load(object sender, EventArgs e)
       {
           string text = @"Zdravím, potřeboval bych poradit. Hledal sem na internetu ale nenašel sem nic co bych potřeboval :/
                           Jedná se o to že mám seznam slov v textovém souboru.A já bych potřeboval po napsání třeba písmena A a zmáčknutí tlačítka aby se mi vygeneroval z toho souboru seznam slov která začínají na písmeno A. Nebo potom více možností třeba slova která obsahují A, nebo nějakou frázi.
                           Bych bych rád kdyby mi někdo pomohl.Díky moc.";
           char separator = ' ';
           string[] words = text.Split(separator);
           listWords = words.ToList<string>();
       }
 
Nahoru Odpovědět 27.7.2015 8:44
Avatar
Paranormal
Redaktor
Avatar
Odpovídá na vodslon
Paranormal:

Ano, přesně něco takového potřebuji ;) Ale stejně mám ještě pár otázek k tomu..

• Jak ten text brát ze souboru?
• Proč je před tím textem ten zavináč?
var finds = from s in listWords where s.Contains(find) select s; Co označuje v tom příkazu to s ?

Jinak díky moc mi to pomohlo ;)

Nahoru Odpovědět 27.7.2015 12:41
„Když toho moc neumíme tak jsme na nejlepší pozici se něčemu naučit.“
Avatar
Michal Štěpánek:

ad 1)
http://www.itnetwork.cz/…-soubory-txt
ad 2)
to je tzv. escape sekvence, která způsobí to, že všechny znaky mezi uvozovkami budou brány jako string a nebudou programem interpretovány jako možné klíčové slovo
ad 3)
to je proměnná, do které se vždycky dosadí nějaké slovo z toho výběru při procházení cyklem

Akceptované řešení
+20 Zkušeností
+1 bodů
Řešení problému
Nahoru Odpovědět  +1 27.7.2015 23:22
Nikdy neříkej nahlas, že to nejde. Vždycky se totiž najde blbec, který to neví a udělá to...
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 6 zpráv z 6.