Úkol:
Napsat program, který vyhledá slova v určených souborech a vypíše, ve kterých se vyskytují.
Podmínky:
1) Oindexovat slova, která jsou v souborech a zapsat výsledky do jiného souboru:
finder --index input.txt (v souboru input.txt je seznam souborů, kde se má vyhledávat)
PŘ. již hotového souboru s indexy:
Kód: Vybrat vše
slovo1 soubor1.txt:pozice1,pozice2
slovo2 soubor1.txt:pozice2
slovo1 soubor2.txt:poziceX
slovo3 soubor2.txt:poziceY,poziceZ, ...
finder --search "slovo1" "slovo2" ... (znamená najdi slovo1 OR slovo2 OR ...)
nebo
finder --search "slovo1 slovo2" "slovo3" ... (znamená najdi ve vstupních souborech výskyt celé fráze "slovo1 slovo2" -- tedy musí se někde vyskytovat slovo1 slovo2 hned za sebou -- OR slovo3)
PŘ.
finder --search "abcd"
output:
"abcd" - soubor2.txt
"abcd" - soubor3.txt
--
finder --search "blah" "blabol"
output:
Nenalezeno.
Další informace:
Slovo := posloupnost znaků oddělená nějakým oddělovačem z množiny " .,!?
" (v testovacích datech byly aj háčky a podobné nepěknosti, ale pokud to nebylo implementované, vybral jiné soubory)
Původně 3 hodiny času - z nějakých 10 lidí stihli v pořádku pouze asi 2, poté přidána asi hodinka. Myslím, že většina uspěla, nebylo to tak hrozné, spíš co jsem tak slyšel (a z vlastní zkušenosti) byly nejasnosti v zadání - asi se v tom dlouho rýpalo...