From 9ee213057a33d625889cedb517edaf0c73332401 Mon Sep 17 00:00:00 2001 From: Alex Zaw Date: Wed, 25 Feb 2026 23:02:24 +0000 Subject: [PATCH] Update Function STRIP_SPACES --- CISTOOLS/Functions/STRIP_SPACES.sql | 43 ++++++++++++++++++++++++++++- 1 file changed, 42 insertions(+), 1 deletion(-) diff --git a/CISTOOLS/Functions/STRIP_SPACES.sql b/CISTOOLS/Functions/STRIP_SPACES.sql index ce67366..229ad5a 100644 --- a/CISTOOLS/Functions/STRIP_SPACES.sql +++ b/CISTOOLS/Functions/STRIP_SPACES.sql @@ -1 +1,42 @@ -@@\@^@ % %@@@@Km@M@ %m@M]@]@ %@M]@@@ %@@ %@Km@ %@@ %@@@ %@@@@ %@@@@ %@@@@~@\@k@ %@~@\@k@ %@~@\@k@ %@~@Mk@k@]@k@ %@~@\@k@ %@~@\@k@ %@~@\@k@ %@~@\@@@ %@ %@m@@M@@@]@@}@}@^@ %``@⣅@z@م@@@M@@]@ %@m@~@m@M@m@k@}N}@k@}}@]@^@ %``@⣅@z@م@@@@Mk@k@K]@@@ %@m@~@m@M@m@k@}N}@k@}@}@]@^@ %@m@^@ %@@^@ % %@@@@@Km@ %M@m@@}ɕ@⣙}@]@^@ % %@@@@Km@ %@}⣙@◁}@^@ % %@@k@@@@ %@@@Km@ %@@@@@^@ % %@@@@ %@@@Km@ %@@^@ % % \ No newline at end of file +SET PATH *LIBL ; + +CREATE OR REPLACE FUNCTION CISTOOLS.STRIP_SPACES ( + INPUT_STRING CLOB(1048576) ) + RETURNS CLOB(1048576) + LANGUAGE SQL + SPECIFIC CISTOOLS.STRIP_SPACES + NOT DETERMINISTIC + READS SQL DATA + CALLED ON NULL INPUT + CONCURRENT ACCESS RESOLUTION DEFAULT + SET OPTION ALWBLK = *ALLREAD , + ALWCPYDTA = *OPTIMIZE , + COMMIT = *NONE , + DECRESULT = (31, 31, 00) , + DYNDFTCOL = *NO , + DYNUSRPRF = *USER , + SQLCURRULE = *STD , + SRTSEQ = *HEX + BEGIN +DECLARE OUTPUT_STRING CLOB ( 1 M ) DEFAULT ' ' ; +-- Step 1: Remove newline characters (concatenate lines together) +SET OUTPUT_STRING = REGEXP_REPLACE ( INPUT_STRING , '[\r\n]+' , '' ) ; +-- Step 2: Replace multiple white spaces (spaces, tabs, etc.) with single space +SET OUTPUT_STRING = REGEXP_REPLACE ( OUTPUT_STRING , '\s+' , ' ' ) ; +RETURN OUTPUT_STRING ; +END ; + +COMMENT ON PARAMETER SPECIFIC FUNCTION CISTOOLS.STRIP_SPACES +( INPUT_STRING IS 'Input String' ) ; + +LABEL ON SPECIFIC FUNCTION CISTOOLS.STRIP_SPACES + IS 'Strip Spaces' ; + +GRANT ALTER , EXECUTE +ON SPECIFIC FUNCTION CISTOOLS.STRIP_SPACES +TO AMAPICS WITH GRANT OPTION ; + +GRANT EXECUTE +ON SPECIFIC FUNCTION CISTOOLS.STRIP_SPACES +TO PUBLIC ; +