W Oracle REGEXP
, nie ma \b
wzór, aby dopasować granice słów. Powszechnie stosowane rozwiązanie wygląda mniej więcej tak.
SELECT id,
REGEXP_REPLACE (msg_info, '(^|\s|\W)(gold)($|\s|\W)', '\1~\2\3', 1,0,'i')
FROM yourtable;
Spowoduje to wyszukanie słowa gold na początku ciągu, otoczonego spacją po obu stronach, końcem ciągu lub znakiem niebędącym słowem (takim jak ? lub -). \1,\2,\3
reprezentują znaki dopasowane w pierwszym, drugim i trzecim nawiasie.