Если шаблон строки всегда один и тот же, без исключений, то можно и без регулярок:
In [1]: text = 'background:red;border-color:rgba(255,255,255,0);color:#0ff;'
In [2]: text = text[:text.find(';color:')] + '#FFFFF;'
In [3]: text
Out[3]: 'background:red;border-color:rgba(255,255,255,0)#FFFFF;'
С использованием регулярного выражения:
In [1]: import re
In [2]: text = 'background:red;border-color:rgba(255,255,255,0);color:#0ff;'
In [3]: to_replace = '#FFFFF'
In [4]: text = text.replace(re.search(r'(^|[^-])color:(.*?)\;', text).group(2), to_replace)
In [5]: text
Out[5]: 'background:red;border-color:rgba(255,255,255,0);color:#FFFFF;'