On 11 Oct 2005, at 00:04, Harvey Toyama wrote:

Hi,

I have a log file to parse. The data looks like this:

                                                      Chip_Test:

  2   1075.7  R120<-7000h                    00020000         mov
HifRegs
  2   1088.1  R14<-7000h                     00020002         mov
HifRegs
  6   1100.5  [7020h]<-1h                    00020004         mov
RSTS_Busy


I do not want to capture the line with "Chip_Test:". I know the third
character will always be a single digit number. I have a feeble
knowledge of Regex from casual Unix use. I thought something like this
would work

            put line vLineCounter into vLineBuffer
            if char 3 of vLineBuffer = "[0-9]" then
            ...


regEx in Rev is only used in the MatchText and ReplaceText functions.

You could do this:

  if char 3 of vLineBuffer is a number then

But you're missing something in the first line. Assuming vLineCounter is a number, and the data to parse is in a variable named vData, then you need something like this:

  put line vLineCounter of vData into vLineBuffer


If you're parsing through all the lines in the file, and if it's long, you'll find that the expression "line vLineCounter of vData" takes longer to evaluate as the value of vLineCounter gets higher. In that case, the "repeat for each" format would be a lot faster. Something like:

  repeat for each line vLine in vData
    if char 3 of vLine is a number then
    -- your stuff
    end if
  end repeat

Cheers
Dave
_______________________________________________
use-revolution mailing list
[email protected]
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution

Reply via email to