Ma con la seconda regexp che ti ho postato hai provato?
codice:
$regex = "/(?<=[^a-z0-9])".$parola."(?=[^a-z0-9])/i";
//puoi usare indifferentemente $parola o $0 nel replacement
si, ma mi dice che non è sql-valida...
codice:
//$parola = lista
supplied argument is not a valid MySQL result resource
SELECT * FROM tabella WHERE campo REGEXP '(?<=[^a-z0-9])lista(?=[^a-z0-9])'
Per la regex nella query credo che il problema siano gli asterischi * che indicano 0 o piu occorrenze, quindi in pratica con una lettera sola becca quasi tutto se non tutto. Così a naso.
Ma in quella che sto usando attualmente, NON ci sono asterischi!!!
codice:
$parola = "lista";
'[^A-Za-z]lista[^A-Za-z]'