我一直不知道到底有没有函数可以实现标题的功能,所以我写了个适合我们业务的。如果大家有更好的,请告诉我。下面是源码:
CREATE OR REPLACE FUNCTION REPLACE_POSITION(STR_IN VARCHAR2, POSITION INTEGER, NEW_CHAR VARCHAR2) /* 用于替换字符串中指定位置的字符的函数 */ RETURN VARCHAR2 IS RESULT VARCHAR2(32000); STR1 VARCHAR2(32000); STR2 VARCHAR2(10); STR3 VARCHAR2(32000); BEGIN IF POSITION <= LENGTHB(STR_IN) AND POSITION > 0 THEN STR1 := SUBSTR(STR_IN, 1, POSITION - 1); STR2 := SUBSTR(STR_IN, POSITION, 1); STR3 := SUBSTR(STR_IN, POSITION + 1, LENGTHB(STR_IN)); STR2 := REPLACE(STR2, STR2, NEW_CHAR); RESULT := STR1 || STR2 || STR3; ELSE RESULT := STR_IN; END IF; RETURN(RESULT); END REPLACE_POSITION;