Regex?Поисковый движок? - PullRequest
       3

Regex?Поисковый движок?

1 голос
/ 30 сентября 2011

Я прочитал некоторую документацию по модулю re, который поставляется со встроенным Python, но я просто не могу понять это. На самом деле, я не совсем уверен, что это то, что я ищу, поэтому позвольте мне объяснить:

У меня огромный словарь. Я хочу набрать критерии поиска, скажем, например, hello, а затем выполнить поиск по словарю и дать мне список, подобный этому:

hello, hell, hello world, hello123. В основном все, что напоминает критерии поиска. Буду ли я использовать регулярные выражения для этого или что-то еще?

Ответы [ 3 ]

2 голосов
/ 30 сентября 2011

Возможно, вы захотите взглянуть на то, что может вычислить расстояние Левенштейна (редактировать). Здесь есть отличная статья о том, как создать что-то вроде того, о чем вы говорите с нуля (в Python! Хорошо, и оно было перенесено на множество других языков).

Возможно, вы не захотите идти по пути «с нуля», но статья даст вам много интересной информации, которая поможет вам решить, какой инструмент имеет необходимый уровень сложности для вас. Xapian, как предлагалось выше, Lucene и другие полнотекстовые поисковые системы предоставят такую ​​возможность, и она может быть очень сложной, но, опять же, вам может и не понадобиться все это.

2 голосов
/ 30 сентября 2011

Поскольку вы используете Python, вы должны взглянуть на Xapian , у него были отличные привязки Python.

То, о чем вы просите, намного сложнее, чем регулярные выражения.1005 *

Вам нужен полнотекстовый поиск, с основами и другими хитростями для нечеткого соответствия.

1 голос
/ 30 сентября 2011

В хранилище PyPI есть новый модуль регулярных выражений (который иногда может заменить текущий модуль Python re).

Это позволяет нечеткое сопоставление.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...