ksuralta ksuralta - 11 months ago 57
Bash Question

sed whole word search and replace

How do I search and replace whole words using sed?


sed -i 's/[oldtext]/[newtext]/g' <file>

will also replace partial matches of
which I don't want it to do.

Answer Source

\b in regular expressions match word boundaries (i.e. the location between the first word character and non-word character):

$ echo "bar embarassment" | sed "s/\bbar\b/no bar/g"
no bar embarassment