Return TypeFunction nameArguments
hzEcodeGrep(hzChain&,hzChain&,const char*,)

Declared in file: hzTextproc.h
Defined in file : hzRegex.cpp

Function Logic:

0:START 1:hzChain::Clear hzChain::Size 2:!Zi.Size() 3:Return E_OK 4:!exp||!exp[0] 5:Return E_ARGUMENT 6:!zi.eof(); 7:*zi!=(char)10 8:hzChain::AddByte 9:S hzChain::Clear FormCheckCstr 10:!FormCheckCstr(*S,exp) 11:items hzChain::AddByte hzChain::Clear 12:Return E_OK

Function body:

hzEcode Grep (hzChain& Zo, hzChain& Zi, const char* exp)
{
   _hzfunc(__func__) ;
   hzChain::Iter   zi ;
   hzChain         L ;
   hzString        S ;
   Zo.Clear() ;
   if (!Zi.Size())
       return E_OK ;
   if (!exp || !exp[0])
       return E_ARGUMENT ;
   for (zi = Zi ; !zi.eof() ; zi++)
   {
       if (*zi != CHAR_NL)
           { L.AddByte(*zi) ; continue ; }
       S = L ;
       L.Clear() ;
       if (!FormCheckCstr(*S, exp))
           continue ;
       Zo << S ;
       Zo.AddByte(CHAR_NL) ;
       L.Clear() ;
   }
   return E_OK ;
}