Skip to content

ivanych/vbukv

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

203 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

NAME

vbukv - Угадывалка слов по буквам

SYNOPSIS

$ vbukv -f slovar.txt -l 5 б3 ю-4 ш+
Прочитан словарь: slovar.txt (157133 слов)
Предположения:
---------------------------------
дебош
шабаш
шабер
шабёр
шабли
шибер
шибко
шибче
шобла
шубат
шубка
---------------------------------
Найдено предположений: 11

DESCRIPTION

Программа ищет слово (или слова) в словаре по заданным правилам. Например: "слово из пяти букв, третья буква Б, четвёртая не Ю и где-то в слове есть буква Ш".

Usage: vbukv [OPTIONS] [RULE]...

Arguments:
  • <RULE> — Правило поиска (можно задать любое количество правил).

    Правила — это фильтры, которые говорят программе, какие слова следует выбрать из словаря. Выбираются только те слова, которые соответствуют ВСЕМ заданным правилам.

    Каждое правило должно соответствовать шаблону:

    L[C][P]

    где:

    L — буква

    C — условие; по умолчанию +

    Возможны 4 условия:

    + — буква есть в слове (либо, если позиция указана, то есть на указанной позиции)

    - — буквы нет в слове (либо, если позиция указана, то нет на указанной позиции)

    = — буква есть только на указанной позиции и нигде больше

    * — буква есть на любой позиции, кроме указанной

    P — позиция буквы в слове

    Если позиция не указана, то поиск происходит по всему слову.

    Позиция обязательно должна быть указана для условий = и *.

    Примеры правил:

    а — в слове есть буква а

    а+ — то же самое, что предыдущий вариант, но условие задано явно

    а1 — первая буква в слове это буква а. При этом в слове могуть быть ещё буквы а на других местах.

    а+1 — то же самое, что предыдущий вариант, но условие задано явно

    а=1 — первая буква в слове это буква а. При этом в слове нет других букв а.

    б- — в слове нет буквы б

    б-1 — первая буква в слове это не буква б. При этом в слове могут быть буквы б на других местах

    б*1 — первая буква в слове это не буква б. При этом в слове есть буква б на каком-то другом месте.

Options:
  • -l, --length <LENGTH> — Длина искомого слова.

    Будут найдены только те слова, которые состоят из указанного количества букв.

    Default value: 5

  • -f, --file <FILE> — Файл словаря.

    Относительный путь к файлу словаря. Словарь должен быть в формате plain text, одно слово в строке, кодировка utf-8.

    Default value: slovar.txt

Словарь

Программа не включает в себя словарь. Словарь должен быть загружен отдельно из какого-то стороннего источника.

Для проверки работоспособности программы можно использовать тестовый словарь. В нём всего десяток слов, но для проверки программы этого достаточно.

TODO Возможно, имеет смысл разместить готовый полноразмерный словарь в этом же репозитории...

About

vbukv - Угадывалка слов по буквам

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages