Подстановочные знаки соответствия регулярного выражения

У меня есть список около 120 тысяч английских слов (в основном, каждое слово в языке).

Мне нужно регулярное выражение, которое позволило бы искать по этим словам, используя символы подстановки, a.k.a.* а также?.

Несколько примеров:

if the user searches for m?st*, it would match for example master or mister or mistery. if the user searches for *ind (any word ending in ind), it would match wind or bind or blind or grind.

Теперь большинство пользователей (особенно те, кто не знаком с регулярными выражениями) знают, что? является заменой ровно 1 символа, в то время как* является заменой для 0, 1 или более символов. Я абсолютно хочу построить свою функцию поиска на основе этого.

Мои вопросы: Как я могу преобразовать то, что пользователь вводит (m?st* например) к регулярному выражению?

Я искал в Интернете (очевидно, включая этот сайт), и все, что я мог найти, были учебники, которые пытались научить меня слишком многому или вопросы, которые были несколько похожи, но не достаточно, чтобы дать ответ на мою собственную проблему.

Все, что я мог понять, это то, что я должен заменить? с., Такm?st* становитсяm.st*, Тем не менее, я понятия не имею, что заменить* с.

Любая помощь будет принята с благодарностью. Спасибо.

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

Ответы на вопрос(9)

Ваш ответ на вопрос