world boundry \b
a word boundary must occur right here.
s = '100 BROAD ROAD APT. 3'
re.sub(r'\bROAD\b', 'RD.', s)
the regular expression reads “match 'ROAD' when it's a whole word by itself anywhere in the string,” whether at the end, the beginning, or somewhere in the middle.
'100 BROAD RD. APT 3'