Secondo il manuale MySQL
MySQL utilizza l'implementazione di espressioni regolari di Henry Spencer, che mira alla conformità con POSIX 1003.2
Regex POSIX
non supporta l'utilizzo del punto interrogativo ?
come un modificatore non avido (pigro) della stella e più quantificatori come PCRE (Perl Compatible Regular Expressions). Ciò significa che non puoi utilizzare +?
e *?
Sembra che dovrai solo usare la versione greedy, che dovrebbe comunque funzionare. Per evitare la corrispondenza di elementi come <img style="/*some style*/" src="a.png"> <script src="www.example.com/js/abc.js">
, puoi usare una classe di caratteri negata:
'<img[^>]*src="http://www'
Nota:il "
non deve essere eseguito l'escape e il .*
all'inizio è implicito.