[r45]: / trunk / library / XmlControl / FB_StringBuffer / Find / svnobj  Maximize  Restore  History

Download this file

20 lines (19 with data), 3.2 kB

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
(* 
    Find a searchstring in the buffer and returns its position.
udiLoop := 0;
iSearch := 0;
pBuffer := pStrBuf + udiStartPos;
pSearch := ADR( sSearchString);
WHILE(pSearch^ <> 0 ) AND udiLoop + udiStartPos < udiLength DO
    IF pBuffer^ <> pSearch^ THEN
        udiLoop := udiLoop + 1;
        pBuffer := pStrBuf + udiStartPos + udiLoop;
        pSearch := ADR( sSearchString);
        iSearch := 0;
    ELSE
        iSearch := iSearch +1;
        pBuffer := pStrBuf + udiStartPos + udiLoop + iSearch;
        pSearch := ADR( sSearchString ) + iSearch;
    END_IF;
END_WHILE;
Find := udiLoop + 1 + udiStartPos;