Ho una corrispondenza con un campo in MySQL, per cui ho pensato che potrei usare un'espressione regolare, ma sembra che MySQL non abbia la funzionalità di cui ho bisogno per fare il lavoro. Ecco lo scenario:Esiste un equivalente MySQL del preg_replace di PHP?
Ho una variabile in PHP chiamata $ url. Diciamo che questa variabile è impostata come la stringa "/ article/my-article/page/2". Ho anche una tabella di URL in MySQL da cui vorrei estrarre il contenuto. Gli URL memorizzati nella mia tabella, tuttavia, includono caratteri jolly.
In precedenza, ho avuto questo set up in modo che il valore memorizzato nella tabella fosse simile a questo: "/ article /%/page /%".
Con tale configurazione, ho potuto solo correre:
SELECT * FROM urls WHERE '$url' LIKE url
E questo sarebbe partita, che è la funzionalità desiderata.
Quello che mi piacerebbe fare ora, è consentire un carattere jolly più avanzato, in modo che invece di "/ article /%/page /%", i miei dati MySQL potrebbero essere "/ article/{{slug}}/pagina/{{page_no}}".
Desidero creare una query SQL che corrisponda a questi dati, utilizzando lo stesso input $ url. LIKE non è più il confronto corretto, dal momento che non sto usando il carattere jolly "%" incorporato, ma piuttosto {{. *}}. Qualche idea su come realizzare questo?
Questa è la risposta corretta. – dotancohen