![]() |
Как сделать поиск по маске *?
Здравствуйте, встречал решения на eliteuins.com, asechka, когда вписываешь номер и можешь найти по маске интересующий. Для этого используют обязательно регулярные выражения? Дайте рабочий пример.
|
Цитата:
P.s. Можно поизвращаться и сделать так: Запрос: 7****** 1. Проверяем длину 2. Проверяем где стоит звёздочка 3. Перебираем по базе все нумы с данной длиной и имеющие в первой позиции символ 7 В принципе просто... НО! Если маска будет например 7*8*2**74 Проверять будет сложновато... Но всё таки возможно :) |
В mysql ищи по теме LIKE, там можно легко сделать аналог *?
* - любое кол-во символов ? - один символ. Базу лучше как-то по умному разбить и пользоваться кешированием. А то миллионы номеров гонять трудновато)) Вообще когда-то такое делал, правда очень давно. Исходники потерялись. Проблемы и примерно как это делалось писал тут https://forum.antichat.ru/threadnav11882-1-10.html |
У меня не номер, а элемент массива, но наверное подойдет.
|
А. Я думал ты поиск по номерам асек делаешь. Ну если элементов не много, т можно и regexp :)
|
PHP код:
|
| Время: 18:17 |