Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 2 Pomógł: 0 Dołączył: 25.03.2011 Ostrzeżenie: (0%)
|
Witam
Posiadam baze, która w tabeli haslo przechowuje kilkadziesiąt tysięcy słów. Tabela haslo składa się z trzech kolumn: id slowo dlugosc_slowa Z wykorzystaniem wyrażeń regularnych chciałbym np. wyszukać losowe czteroliterowe słowo zaczynające się na literę 'l' robię to za pomocą zapytania: Kod SELECT * FROM haslo WHERE slowo REGEXP '[l]...$' and dlugosc_slowa = 4 ORDER BY RAND( ) LIMIT 1 Zapytanie zwraca poprawne rezultaty (np. lada, list) dopóki nie napotka na polskie znaki, jeśli w sprawdzanym słowie napotka na polski ogonek to potrafi zwrócić np. zlać lub pląs - wyrazy czteroliterowe ale nie zaczynające się na litere 'l' kodowanie utf8 metoda porównywania napisów to utf8_polish_ci Jak sobie z tym poradzić? Z góry dziękuje za pomoc. |
|
|
|
![]() |
Post
#2
|
|
|
Grupa: Zarejestrowani Postów: 2 Pomógł: 0 Dołączył: 25.03.2011 Ostrzeżenie: (0%)
|
Fajny sposób ale co w przypadku kiedy chce wyszukać sześcioliterowe słowo gdzie wiem, że:
pierwsza litera to 'k' trzecia to 'a' i szósta to 'ć' [k].[a]..[ć] (kłamać) |
|
|
|
molek Wyrażenia regularne a polskie znaki diakrytyczne 25.03.2011, 13:33:52
Crozin A po co Ci wyrażenia regularne tutaj w ogóle?[SQL]... 25.03.2011, 13:39:23
Crozin Przy pomocy SUBSTRING() możesz wyciąć sobie pojedy... 25.03.2011, 14:48:35
kitol Spróbuj również:
[SQL] pobierz, plaintext SELECT .... 29.03.2011, 09:57:23 ![]() ![]() |
|
Aktualny czas: 28.12.2025 - 02:18 |