Wyszukiwanie w bazie na podstawie tekstu |
Wyszukiwanie w bazie na podstawie tekstu |
5.08.2014, 12:10:34
Post
#1
|
|
Grupa: Zarejestrowani Postów: 63 Pomógł: 3 Dołączył: 27.08.2008 Ostrzeżenie: (0%) |
Witam
Czy ktoś zna może jakąś klasę/funkcję, która by stworzyła mi fragment zapytania do przeszukiwania bazy? Przykładowo: Użytkownik wprowadza tekst: Jan Kowalski|nowak -warszawa i na podstawie tego tekstu skrypt by to podzielił na kawałki i wygenerował mi odpowiednie zapytanie, np:
zwróci np coś takiego
lub coś w tym stylu. Oczywiście to można napisać samodzielnie, ale jak by do tego dodać jeszcze cudzysłowy, gwiazdki, nawiasy... to trochę zabawy będzie, a, jak na programistę przystało, jestem leniwy, a coś nie mogę czegoś takiego znaleść w googlachj Ten post edytował MatKus 5.08.2014, 12:11:35 |
|
|
5.08.2014, 13:30:33
Post
#2
|
|
Grupa: Zarejestrowani Postów: 3 Pomógł: 0 Dołączył: 5.01.2012 Ostrzeżenie: (0%) |
Możesz napisać funkcję do której będziesz przekierowywał cały tekst a w niej dzielił go na części za pomocą explode() następnie według wartości wykonywał odpowiednie zapytanie SELECT na bazie danych np.:
Tekst : Jan Kowalski|Nowak -Warszawa (- oznacza tutaj nie brać pod uwagę?) Podzielić to explode:
Itd. w przypadku imienia i nazwiska. |
|
|
6.08.2014, 09:09:54
Post
#3
|
|
Grupa: Zarejestrowani Postów: 63 Pomógł: 3 Dołączył: 27.08.2008 Ostrzeżenie: (0%) |
Tak, wiem, poekspolodować po slacji, potem pod-fragmenty po |, uwzględnić minus, ale potem jednak anulować explode, jeśli coś jest od cudzysłowa (np. "jan kowalski" to nie to samo, co "kowalski jan", ale to samo, co "jan" "kowalski") itp.
Wiem, że to można napisać i nie jest to nic trudnego, ale żeby to solidnie zrobić (uwzględnić cudzysłowy, minusy, AND/OR, nawiasy, szukanie w kilku kolumnach and/or), to przynajmniej kilka dni trzeba poświęcić, więc może ktoś zna na to gotowca. |
|
|
Wersja Lo-Fi | Aktualny czas: 27.04.2024 - 10:20 |