Re: Looking for the best "Parse"...
- Posted by Igor Kachan <kinz at peterlink.ru> Oct 26, 2001
- 389 views
Hello Cassidy Napoli, Just once more iteration with your program and your very interesting *recursive* idea, which you can make with the *delete doubl* method to get a simple and understandable code. Try please: --[begin code] include wildcard.e global function parseUserText (sequence u, --unParsedText -- u sequence e, --escape -- e sequence r) --replace -- r -- sequence p --ParsedText -- p integer v --varPos -- v integer m -- le integer n -- lu integer k -- v = match(lower(e), lower(u)) -- add explanations in your if not v then return u end if -- native language and in English -- m = length(e) -- place for explanation n = length(u) -- place for explanation k = n - m -- place for explanation if v = 1 -- place for explanation then p = r & u[m+1..n] -- place for explanation elsif v = 1 + k -- place for explanation then p = u[1..k] & r -- place for explanation else p = u[1..v-1] & r & u[v+m..n] -- place for explanation end if -- place for explanation return parseUserText(p,e,r) -- place for explanation end function sequence text text = parseUserText("The $A jumped over the lazy dog.","$A","quick brown fox") puts (1, text) --[end code] The speed is another question, it requires the bench-testings on monotasking OS, in plain Dos-32 mode, for example. Regards, Igor Kachan kinz at peterlink.ru