PERL spell checker

Programovacie jazyky, rady, poradňa...
7764803
Novice
Novice
Príspevky: 8
Registrovaný: 14 mar 2011, 17:01

PERL spell checker

Príspevok od používateľa 7764803 »

Zdravim.

Potrebujem spravit program v jazyku PERL ktory na vstupe zoberie textak a overi v nom existenciu danych slovicok. Na overenie chcem pouzit Aspell. Na vystupe program vyhodi ci dane slovicko existuje alebo nie. Nasiel som na CPAN jeden modul ale neviem ho nainstalovat.
http://search.cpan.org/~hank/Text-Aspell-0.09/Aspell.pm
Nasiel som aj navod na jeho instalaciu http://backpan.perl.org/authors/id/H/HA ... .09.readme, ale dostal som sa len po krok perl Makefile.PL. Ked zadam tento prikaz tak mi vyhodi toto:

Kód: Vybrať všetko

Note <probably harmless> No library found for -laspell
Note <probably harmless> No library found for -lkernel32
Note <probably harmless> No library found for -luser32
Note <probably harmless> No library found for -lgdi32
Note <probably harmless> No library found for -lwinspool
atd.
Robim to pod Windowsom.

Vie mi niekto poradit co s tym? A riesi tento modul vobec moju problematiku?
BX
Addict
Addict
Používateľov profilový obrázok
Príspevky: 4572
Registrovaný: 10 jan 2008, 15:30

Re: PERL spell checker

Príspevok od používateľa BX »

Podľa toho readme to nemusí buildiť, malo by to ísť nainštalovať.
Ale tvoj problém by mohlo byť toto:
with the additional requirement of passing to 'perl Makefile.PL' the
necessary arguments (e.g. INC and LIBS) to specify the locations of the lib
and header files, if these were installed in a non-standard location. Make
sure that if a non-standard location was used that this is added to your PATH
environment variable before running the tests.
Btw. ak by to nemuselo byť extrémne efektívne, prečo nepoužiješ reguláne výrazy? V perl to máš jednoduché.
7764803
Novice
Novice
Príspevky: 8
Registrovaný: 14 mar 2011, 17:01

Re: PERL spell checker

Príspevok od používateľa 7764803 »

Vďaka za tvoju odpoved. Mozes mi prosim ta priblizit ako si to myslel s tymi regularnymi vyrazmi?
BX
Addict
Addict
Používateľov profilový obrázok
Príspevky: 4572
Registrovaný: 10 jan 2008, 15:30

Re: PERL spell checker

Príspevok od používateľa BX »

Perl má regulárne výrazy implementované priamo v sebe.
Skús si spustiť napr

Kód: Vybrať všetko

$a = "ahoj ja som text";
if ( $a =~ /<text>/ ) // neviem, ci si spravne pamatam kotvy na zaciatok/koniec slova. Asi nie :D
 ... je tam slovo text
Ak ti ide ibo o zistenie, či tam slová sú/nie sú, stačí ti pole reg. výrazov a testovať každý riadok na každé slovo (plus môžeš slovo z pola vyradiť, keď ho už raz nájdeš)
7764803
Novice
Novice
Príspevky: 8
Registrovaný: 14 mar 2011, 17:01

Re: PERL spell checker

Príspevok od používateľa 7764803 »

Ano. Ale ja mam overit ci sa dane slovicko nachadza v ASPELLi. A na vstupe mam vygenerovany textak, ktory obsahuje nieco take:

Kód: Vybrať všetko

Podstatné meno, substantívna, mužský neživotný rod, singulár, nominatív: aak aak /SSis1
Podstatné meno, substantívna, mužský neživotný rod, singulár, genitív: aak aaka /SSis2
Podstatné meno, substantívna, mužský neživotný rod, singulár, datív: aak aaku /SSis3
Podstatné meno, substantívna, mužský neživotný rod, singulár, akuzatív: aak aak /SSis4
Podstatné meno, substantívna, mužský neživotný rod, singulár, vokatív: aak aak /SSis5
Podstatné meno, substantívna, mužský neživotný rod, singulár, lokál: aak aake /SSis6
Podstatné meno, substantívna, mužský neživotný rod, singulár, inštrumentál: aak aakom /SSis7
Podstatné meno, substantívna, mužský neživotný rod, plurál, nominatív: aak aaky /SSip1
Podstatné meno, substantívna, mužský neživotný rod, plurál, genitív: aak aakov /SSip2
Podstatné meno, substantívna, mužský neživotný rod, plurál, datív: aak aakom /SSip3
Podstatné meno, substantívna, mužský neživotný rod, plurál, akuzatív: aak aaky /SSip4
Podstatné meno, substantívna, mužský neživotný rod, plurál, vokatív: aak aaky /SSip5
Podstatné meno, substantívna, mužský neživotný rod, plurál, lokál: aak aakoch /SSip6
Podstatné meno, substantívna, mužský neživotný rod, plurál, inštrumentál: aak aakmi /SSip7
Podstatné meno, substantívna, mužský neživotný rod, singulár, nominatív: aalen aalen /SSis1
atd...
A ja mam overit ci sa dane slovicka aak aak, aak aaka... nachadzaju v ASPELLI.
BX
Addict
Addict
Používateľov profilový obrázok
Príspevky: 4572
Registrovaný: 10 jan 2008, 15:30

Re: PERL spell checker

Príspevok od používateľa BX »

7764803 napísal:Na overenie chcem pouzit Aspell.
...
Vie mi niekto poradit co s tym? A riesi tento modul vobec moju problematiku?
Nikde nepíšeš, že to musí byť v tom. Ak to je teda takto, poriadne čítaj readme. Tá chyba hovorí, že nedokáže nájsť potrebné knižnice. Musíš ich tam teda nejak dostať (a to pravdepodobne tak, že pridáš adresár s nimi do PATH, alebo ich dáš priamo k vykonávanému kódu)
7764803
Novice
Novice
Príspevky: 8
Registrovaný: 14 mar 2011, 17:01

Re: PERL spell checker

Príspevok od používateľa 7764803 »

Dal som ich do PATH aj ku kodu a nic a ked dam prikaz make (nmake ako je v navode nefunguje), tak mi vypise:

Kód: Vybrať všetko

Makefile:451: *** multiple target patterns. Stop
BX
Addict
Addict
Používateľov profilový obrázok
Príspevky: 4572
Registrovaný: 10 jan 2008, 15:30

Re: PERL spell checker

Príspevok od používateľa BX »

Nechce sa mi to skúšať, takže s tým moc nepomôžem.
Každopádne si na windows, malo by to ísť nainštalovať. Toto, čo robíš, je v sekcii "If you wish to build Text::Aspell from source:"
Podľa mňa to robiť vôbec nemusíš.
Napísať odpoveď