От Дмитрий Кропотов Ответить на сообщение
К Администрация (И.Т.) Ответить по почте
Дата 22.04.2005 09:39:50 Найти в дереве
Рубрики Прочее; Версия для печати

Помогу чем могу

Привет!
Привет!

Выложил в копилку
https://vif2ne.org/nvz/forum/files/Dim/uk.zip
словник для Манипуляции сознанием, в котором для отсортированного по алфавиту списка всех слов книги указаны номера страниц, на которых они встречаются.
Пример:

alma 234
America 155
American 410 413
Annus 421
antipersonnel 137
Army 141
asiatica 188
behavior 39
bellum 30
best 132
Bureau 206
c 17 49 333 428
C 224 232
calculating 50
case 10
Cave 196
CCCР 386 425
Census 206
Centesimus 421
contra 30
convincere 403
crucis 10
Cовременное 191
Cогласно 387
Cоздатель 202
Cообщается 388
Cудя 384
danse 72

Страницы ставились исходя из числа строк 60 на странице, включая оглавление.

Теоретически, для приведение в божеский вид необходимо вычистить лишние слова, объединить однокоренные.
Для составления именного указателя необх. выделить имена собственные и дополнить их инициалами.
Правда, дело осложняется тем, что в словнике более 50 тыс. слов (строк), но, все же это, наверное легче, чем вычитывать саму книгу.

Принимаются полезные пожелания по усовершенствованию программки на perl-e, это проделывающей:

use locale;
print "Составление указателя";
my %uk;
my $pg=1;
my $pg_len=60;
my $line;

while(<>){
if (++$line>=$pg_len) {
$pg++; $line=1;
}
while (/(\w+)/gi) {
$uk{"$1"}->{$pg}++;
}
}

for $i (sort keys %uk) {
print "\n$i ";
for $j (sort {$a<=>$b} keys %{$uk{"$i"}}) {
print $j," ";
}
}



Дмитрий Кропотов, www.avn-chel.nm.ru