replacing values in shell script using sed
Negation to the rescue:

sed -i "s/server.address=[^\ ].*\ /server.address=${SERVER_ADDRESS} /g"


This is telling to search zero or more characters (.*) NOT matching whitespace ([^\ ]) up to the first whitespace.

A good pattern is not to use real values to be replaced (10.111.11.11:3197) but to use a mark like ###SERVER_ADDRESS###. If something goes wrong you can easily post-check with

grep "###" &amp;&amp; exit -1


This can avoid continuing with dangerous values (mixing dev/pre/pro values)