From d34330a23cd6c556c61b15d2d0233a67afb002bd Mon Sep 17 00:00:00 2001 From: Erich Eckner Date: Mon, 27 Nov 2017 16:27:26 +0100 Subject: lowlevelunit.pas: unterVerzeichnisRegex neu --- lowlevelunit.pas | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/lowlevelunit.pas b/lowlevelunit.pas index 1497d2c..a871145 100644 --- a/lowlevelunit.pas +++ b/lowlevelunit.pas @@ -143,6 +143,7 @@ procedure readAnAndorString(var f: file; out s: string; const len: int64; checkE procedure readAnAndorString(var f: file; out s: string; checkEOL: boolean); overload; procedure splitStrToInt(s: string; out ia: tLongintArray); +function unterVerzeichnisRegex(dateien: array of const): string; var base64Chars: array[0..63] of char; @@ -1284,6 +1285,40 @@ begin end; end; +function unterVerzeichnisRegex(dateien: array of const): string; +var + i: longint; + s: string; +begin + result:=''; + for i:=0 to length(dateien)-1 do begin + case dateien[i].vType of + vtChar: + s:=dateien[i].vChar; + vtWideChar: + s:=string(dateien[i].vWideChar); + vtString: + s:=string(dateien[i].vString); + vtPChar: + s:=dateien[i].vPChar; + vtPWideChar: + s:=dateien[i].vPWideChar; + vtAnsiString: + s:=string(dateien[i].vAnsiString); + vtWideString: + s:=string(dateien[i].vWideString); + else + fehler('unterVerzeichnisRegex Argument Nummer '+intToStr(i)+' ist kein String!'); + end{of case}; + s:=extractFilePath(s); + while rightStr(s,1)='/' do + delete(s,length(s),1); + result:=result+'|'+s; + end; + delete(result,1,1); + result:='('+result+')(/|$)'; +end; + var b: byte; -- cgit v1.2.3-70-g09d2