Replacing columns-separated fields having special characters

Dear colleagues,

**I have tens of files with fields separated by column ':' like below

CCM_JNI_CLASS_PATH=:${CCB_APP_BIN}/CCBG_epsm_opm_wfl_001.jar:${CCB_APP_BIN}/CCBF_fif-api.jar:${CCB_APP_BIN}/CCB_geronimo-jaxws_2.1_spec-1.0.jar:${CCB_APP_BIN}/CCB_geronimo-ws-metadata_2.0_spec-1.1.2.jar:${CCB_APP_BIN}/CCB_jaxb-api-2.1.jar::${CCB_APP_BIN}/CCB_jaxb-impl-2.1.4.jar:${CCB_APP_BIN}/CCB_jaxb-xjc.jar:${CCB_APP_BIN}/CCB_jms-1.1.jar:${CCB_APP_BIN}/CCB_jsr173-1.0_api.jar:${CCB_APP_BIN}/CCB_jsr250-api-1.0.jar:${CCB_APP_BIN}/CCB_jta.jar:${CCB_APP_BIN}/CCB_log4j-1.2.15.jar:${CCB_APP_BIN}/CCB_ojdbc14-1.4.jar:${CCB_APP_BIN}/CCB_saaj-api-1.3.jar

**each file has one occurrence of the path ${CCB_APP_BIN}/CCB_log4j-1.2.15.jar that needs to be replaced by ${CCB_APP_BIN}/CCB_log4j-1.2-api-2.12.1.jar:${CCB_APP_BIN}/CCB_log4j-api-2.12.1.jar:${CCB_APP_BIN}/CCB_log4j-core-2.12.1.jar

**i had difficulties using sed as i could not prevent the special characters interpretation like '$'

** i am on Centos machine:

ccb20b@redmoon CreateEnvironment/CONF/CCB_126.01 $ lsb_release -a
LSB Version:	:base-4.0-amd64:base-4.0-noarch:core-4.0-amd64:core-4.0-noarch
Distributor ID:	CentOS
Description:	CentOS release 6.10 (Final)
Release:	6.10
Codename:	Final

** Appreciate supporting me for required substitution by any possible way you suggest

Many thanks in advance

BR,
Eman

Forum guidelines are that you must post your own code, error messages, sample input and out to ask for assistance.

You are right - sed only takes RegularExpressions so is not ideal if you want to match plain strings that can contain RE-specific characters.
A better tool for this is awk. Here is a principle solution:

echo 'bla:fromstring:blabla:fromstring' | awk 'BEGIN { RS=":" } $1==from { $1=to } 1' from='fromstring' to='tostring' | paste -sd ":"
bla:tostring:blabla:tostring

The RS (RecordSeparator) is changed from newline to ":".
Because awk has a problem with the last record when ORS (OutputRecordSeparator) is changed to ":" I pipe the newline-separated output to paste that does the output formatting.