Вам необходимо разработать эвристику, которая будет получать вероятные совпадения вне домена. То, как я бы это сделал, - это сначала найти большой корпус текста. Например, вы можете скачать Википедию.
Затем возьмите свой корпус и объедините каждые два смежных слова. Например, если ваше предложение:
quick brown fox jumps over the lazy dog
Вы создадите список:
quickbrown
brownfox
foxjumps
jumpsover
overthe
thelazy
lazydog
Каждый из них будет иметь счет один. Разбирая свой корпус, вы будете следить за частотными парами каждых двух слов. Кроме того, для каждой пары вам нужно отсортировать исходные два слова.
Сортируйте этот список по частоте, а затем попытайтесь найти совпадения в вашем домене по этим словам.
Наконец, проверьте домен на наличие двух первых словосочетаний, которые не зарегистрированы!
Я думаю, что такие сайты, как DomainTool, берут список слов с самым высоким рейтингом. Затем они пытаются сначала разобрать эти слова. В зависимости от цели, вы можете рассмотреть возможность использования MTurk для выполнения этой работы. Разные люди будут разбирать одни и те же слова по-разному, и они могут не делать это пропорционально тому, насколько часто встречаются эти слова.