Plsql 替换链
是否存在避免批量替换链的方法? i、 ePlsql 替换链,plsql,replace,chain,Plsql,Replace,Chain,是否存在避免批量替换链的方法? i、 e 选择 例如:(替换)替换(替换)替换(替换)替换(替换( 几根绳子 不幸的是,我的一位同事最近编写了一个PL/SQL函数来实现这一点,类似这样: PACKAGE BODY string_utils IS FUNCTION multi_replace ( p_string VARCHAR2 , p_search1 VARCHAR2 , p_replace1 VARCHAR2 DEFAULT NULL
选择
例如:(替换)替换(替换)替换(替换)替换(替换(
几根绳子
不幸的是,我的一位同事最近编写了一个PL/SQL函数来实现这一点,类似这样:
PACKAGE BODY string_utils IS
FUNCTION multi_replace
( p_string VARCHAR2
, p_search1 VARCHAR2
, p_replace1 VARCHAR2 DEFAULT NULL
, p_search2 VARCHAR2 DEFAULT NULL
, p_replace2 VARCHAR2 DEFAULT NULL
, p_search3 VARCHAR2 DEFAULT NULL
, p_replace3 VARCHAR2 DEFAULT NULL
, p_search4 VARCHAR2 DEFAULT NULL
, p_replace4 VARCHAR2 DEFAULT NULL
, p_search5 VARCHAR2 DEFAULT NULL
, p_replace5 VARCHAR2 DEFAULT NULL
, p_search6 VARCHAR2 DEFAULT NULL
, p_replace6 VARCHAR2 DEFAULT NULL
, p_search7 VARCHAR2 DEFAULT NULL
, p_replace7 VARCHAR2 DEFAULT NULL
, p_search8 VARCHAR2 DEFAULT NULL
, p_replace8 VARCHAR2 DEFAULT NULL
, p_search9 VARCHAR2 DEFAULT NULL
, p_replace9 VARCHAR2 DEFAULT NULL
) RETURN VARCHAR2
IS
l_result_str VARCHAR2(32767) := p_string;
BEGIN
IF p_search1 IS NOT NULL THEN
l_result_str := REPLACE(l_result_str, p_search1, p_replace1);
END IF;
IF p_search2 IS NOT NULL THEN
l_result_str := REPLACE(l_result_str, p_search2, p_replace2);
END IF;
IF p_search3 IS NOT NULL THEN
l_result_str := REPLACE(l_result_str, p_search3, p_replace3);
END IF;
IF p_search4 IS NOT NULL THEN
l_result_str := REPLACE(l_result_str, p_search4, p_replace4);
END IF;
IF p_search5 IS NOT NULL THEN
l_result_str := REPLACE(l_result_str, p_search5, p_replace5);
END IF;
IF p_search6 IS NOT NULL THEN
l_result_str := REPLACE(l_result_str, p_search6, p_replace6);
END IF;
IF p_search7 IS NOT NULL THEN
l_result_str := REPLACE(l_result_str, p_search7, p_replace7);
END IF;
IF p_search8 IS NOT NULL THEN
l_result_str := REPLACE(l_result_str, p_search8, p_replace8);
END IF;
IF p_search9 IS NOT NULL THEN
l_result_str := REPLACE(l_result_str, p_search9, p_replace9);
END IF;
RETURN l_result_str;
END multi_replace;
END;
一些样本数据和预期结果会有所帮助。这意味着什么?