From 1253c208c734c9e9ab2ce94f91fb1eb02597724d Mon Sep 17 00:00:00 2001 From: Emmanuel Bourg Date: Thu, 24 May 2018 23:14:37 +0200 Subject: [PATCH] Moved the string manipulation functions into a separate source file --- source/qb64.bas | 27 ++------------------------- source/utilities/strings.bas | 28 ++++++++++++++++++++++++++++ 2 files changed, 30 insertions(+), 25 deletions(-) create mode 100644 source/utilities/strings.bas diff --git a/source/qb64.bas b/source/qb64.bas index a40c83f92..eadec0394 100644 --- a/source/qb64.bas +++ b/source/qb64.bas @@ -25031,31 +25031,6 @@ Error_Happened = 1 Error_Message = a$ END SUB -FUNCTION StrRemove$ (myString$, whatToRemove$) 'noncase sensitive -a$ = myString$ -b$ = LCASE$(whatToRemove$) -i = INSTR(LCASE$(a$), b$) -DO WHILE i - a$ = LEFT$(a$, i - 1) + RIGHT$(a$, LEN(a$) - i - LEN(b$) + 1) - i = INSTR(LCASE$(a$), b$) -LOOP -StrRemove$ = a$ -END FUNCTION - -FUNCTION StrReplace$ (myString$, find$, replaceWith$) 'noncase sensitive -IF LEN(myString$) = 0 THEN EXIT FUNCTION -a$ = myString$ -b$ = LCASE$(find$) -basei = 1 -i = INSTR(basei, LCASE$(a$), b$) -DO WHILE i - a$ = LEFT$(a$, i - 1) + replaceWith$ + RIGHT$(a$, LEN(a$) - i - LEN(b$) + 1) - basei = i + LEN(replaceWith$) - i = INSTR(basei, LCASE$(a$), b$) -LOOP -StrReplace$ = a$ -END FUNCTION - SUB WriteConfigSetting (heading$, item$, tvalue$) value$ = tvalue$ SHARED ConfigFile$, ConfigBak$ @@ -25347,6 +25322,8 @@ t1$ = LTRIM$(STR$(v)) IF t$ = t1$ THEN VerifyNumber = -1 END FUNCTION +'$INCLUDE:'utilities\strings.bas' + '$INCLUDE:'subs_functions\extensions\opengl\opengl_methods.bas' 'INCLUDE:'qb_framework\qb_framework_methods.bas' diff --git a/source/utilities/strings.bas b/source/utilities/strings.bas new file mode 100644 index 000000000..44c8e24a3 --- /dev/null +++ b/source/utilities/strings.bas @@ -0,0 +1,28 @@ +' +' String manipulation functions +' + +FUNCTION StrRemove$ (myString$, whatToRemove$) 'noncase sensitive + a$ = myString$ + b$ = LCASE$(whatToRemove$) + i = INSTR(LCASE$(a$), b$) + DO WHILE i + a$ = LEFT$(a$, i - 1) + RIGHT$(a$, LEN(a$) - i - LEN(b$) + 1) + i = INSTR(LCASE$(a$), b$) + LOOP + StrRemove$ = a$ +END FUNCTION + +FUNCTION StrReplace$ (myString$, find$, replaceWith$) 'noncase sensitive + IF LEN(myString$) = 0 THEN EXIT FUNCTION + a$ = myString$ + b$ = LCASE$(find$) + basei = 1 + i = INSTR(basei, LCASE$(a$), b$) + DO WHILE i + a$ = LEFT$(a$, i - 1) + replaceWith$ + RIGHT$(a$, LEN(a$) - i - LEN(b$) + 1) + basei = i + LEN(replaceWith$) + i = INSTR(basei, LCASE$(a$), b$) + LOOP + StrReplace$ = a$ +END FUNCTION