Бирем сборник какойнибудь электронной литературы русиш или англ и желательно в одной кодировке анси или оем, задаем расширение всем этим файлам одинаковое. затем пишется небольшая програмулина которая проходится по всем файлам с таким каким надо расширением и выдирает оттудова все слова какие только найдет. все дела. можно готовить словари спешал под юзера (прогуглить нужного ламака и все что найдем в файл). Как язык написания проги и для работы со словарями с командной строки лучше чем перл не найти =)
#!C:/perl/bin/perl
###########################################################
# Кидаем этот файл в директорию с *.txt файлами и запускаем
# На выходе получается файл words.lst, в котором сложены все слова
# из всех найденых *.txt файлов (в данной директории) в алфавитном порядке
# (c) Rabid Rabbit 2006 ну практически только что :)
# я уже писал раньше такую же прогу но вот посеял гдето, пришлось написать новую с нуля :)
###########################################################
@fl=glob '*.txt';
foreach $fname (@fl){
$ansin=$fname;
# OEM в ANSI
$ansin=~tr/АБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯЁабвгдежзийклмнопрсЄтєуЇфїх_ц_ч_ш_щъыьэюяё/__'_":┼╪_%_<_____''""--_T_>____р Ўў_¤_│ЁcЄ<┐-RЇабтвугфдхецжчзшищйклмнопс/;
print "$ansin\n";
open(ftxt,$fname) || die "Can't Open $fname: $!\n";
while (<ftxt>){
@words=split(/['"?!|.,\-():;\s]+/,$_);
foreach $word (@words){
$word=~s/\s+//gm;
if (length($word)>0){
# ANSI в OEM (это можно закоментировать если текст в OEM (виндовой cp-1251 кодировке))
$word=~tr/__'_":┼╪_%_<_____''""--_T_>____р Ўў_¤_│ЁcЄ<┐-RЇабтвугфдхецжчзшищйклмнопс/АБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯЁабвгдежзийклмнопрсЄтєуЇфїх_ц_ч_ш_щъыьэюяё/;
# аналогично lc($words)
$word=~tr/QWERTYUIOPASDFGHJKLZXCVBNM/qwertyuiopasdfghjklzxcvbnm/;
# lc() для нац не потянет :)
$word=~tr/ЙЦУКЕНГШЩЗХЪФЫВАПРОЛДЖЭЯЧСМИТЬБЮЁЇ_Є_/йцукенгшщзхъфывапролджэячсмитьбюёї_є_/;
$wordlist{$word}=$word;
}
}
}
close(ftxt);
}
open(fout,'>words.lst') || die "Can't Create words.lst: $!\n";
foreach $key (sort keys %wordlist){
print fout "$key\n";
}
close(fout);
exit;
Еще могу накидать для сортировки, рандомизации, вылавливания дублей, цыфр, англицких, спецсимв и проч и проч. Таких "крутых" програм мне не жалко роздавать