Jak używać REGEXP w MySQL?

Jak używać REGEXP w MySQL?
James Prada
  • Rejestracja:prawie 5 lat
  • Ostatnio:ponad 4 lata
  • Postów:65
0

select fileformat from kubutek_mindrivermagazine.audioblog_getid3 REGEXP filename = "*2019-12-16 16.57.44.mp3";

Witam. Mam w bazie danych nazwy plikow zapisane razem ze sciezka dostepu. Chcialbym je wylowic za pomoca funkcji regexp. Czy moze mi ktos w tym pomoc? Powyzsza instrukcja wywala errora.

Dziekuje i pozdrawiam.
Kuba

edytowany 1x, ostatnio: James Prada
serek
  • Rejestracja:około 11 lat
  • Ostatnio:około 3 godziny
  • Postów:1475
0

A gdzie masz WHERE? W ogóle źle to używasz, przecież w dokumentacji/tutorialach masz jak byk jak powinno być.

https://www.mysqltutorial.org/mysql-regular-expression-regexp.aspx/

edytowany 1x, ostatnio: serek
James Prada
  • Rejestracja:prawie 5 lat
  • Ostatnio:ponad 4 lata
  • Postów:65
0

Mniejsza z tym jak mam...

^\S+2019-12-16 16.57.44.mp3$

Tak mam miec a mi to nie dziala nawet jak wpisuje poprawnie:

Kopiuj
select fileformat from kubutek_mindrivermagazine.audioblog_getid3 where filename REGEXP "^\S+2019-12-16 16.57.44.mp3$";

Co robie zle?

James Prada
Hmm... - Po co przeklinac siarczyscie jak mozna po prostu zrobic Hmm... LoL
James Prada
  • Rejestracja:prawie 5 lat
  • Ostatnio:ponad 4 lata
  • Postów:65
0

Moze sfofmuuje pytanie w prostrzy sposob. Jakim regexpem mam odkryc taki string.

askdfjaskdjfh3242342rsdfsdfas_dupa

jak dana mam tylko "dupa"

^\S+dupa$

???

James Prada
  • Rejestracja:prawie 5 lat
  • Ostatnio:ponad 4 lata
  • Postów:65
0

Mam co takiego...

Kopiuj
SELECT fileformat FROM kubutek_mindrivermagazine.audioblog_getid3 WHERE filename REGEXP "^\S+2019-12-16 16.57.44.mp3$";

...i dlaczego to nie dziala?

jurek1980
  • Rejestracja:ponad 8 lat
  • Ostatnio:około 6 godzin
  • Postów:3509
1

Co to znaczy nie działa? Podawaj może bardziej szczegółowe informacje. Nie zwraca wierszy które byś chciał? Wywala jakiś błąd?
Wygląda na to, że po pierwsze używasz podwójnego cudzysłowu a nie pojedynczego, dla wpisania wyrażenia. Po drugie zwróć uwagę, na symbol kropki. W wyrażeniach regularnych to słowo kluczowe, a u Ciebie chyba to nie jest zamierzone.
Wygląda na to, że w tym przypadku wystarczy zwykły like.
Zobacz tu:
http://sqlfiddle.com/#!9/f575df/20

Kopiuj
SELECT fileformat FROM audioblog_getid3
WHERE filename REGEXP '^\S+2019-12-16 16.57.44.mp3$';

Select fileformat FROM audioblog_getid3
WHERE filename like '%2019-12-16 16.57.44.mp3';
edytowany 1x, ostatnio: jurek1980
James Prada
Wpadlem na to wczoraj... jakos... ale dziekuje, ze tu napisales... wiadomo... moze komus sie przydac.

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.