So i think i might have come up with some sort of solution, but needs some expert tuning.
Take a look at the following code.
!/usr/bin/perl use strict; use warnings; my @tags = qw( 8 9 35 50 97 57 34 49 56 43 52 200 207 40 55 11 167 54 +59 44 21 38 60 1 10); my $reg_ex = join( '|', @tags ); open(FH, "test.log")||die("Unable to open log file: $! \n"); while(<FH>) { printf("Working on String : $_ \n"); if( /\[(.*)\]/) { printf("New String: <$1> \n"); my @vals = split(/(8=|9=)/, $1); foreach my $l (@vals) { printf("$l\n"); } } }
This spits out.
chimi:~/programs/perlweb/FIXRead cuthbe$ perl t.pl Working on String : 2005/11/18 00:06:49:875: FIXPump: Received data on + connection {OBMSCNX} [8=FIX.4.29=040435=849=EXLINK256=DB_ORDER50=DES +RISKGATEWAY57=DCN3230134=4045052=20051118-05:06:491=ATOP116=0.0000000 +011=DES:fud630_2005111814=15.000017=0131730433520=031=138.0800000032= +15.000037=131726062238=15.000039=254=155=CibntractZ60=20051118-05:06: +49150=2151=values=13173047101317260622109=DCN3230163=0167=F00=2005122 +07=T40=244=138.080000005113=06556=20051117-23:06:4610=230] New String: <8=FIX.4.29=040435=849=EXLINK256=DB_ORDER50=DESRISKGATEWAY +57=DCN3230134=4045052=20051118-05:06:491=ATOP116=0.0000000011=DES:fud +630_2005111814=15.000017=0131730433520=031=138.0800000032=15.000037=1 +31726062238=15.000039=254=155=CibntractZ60=2051118-05:06:49150=2151=v +alues=13173047101317260622109=DCN3230163=0167=F200=200512207=T40=244= +138.080000005113=06556=20051117-23:06:4610=230> 8= FIX.4.2 9= 040435=84 9= EXLINK256=DB_ORDER50=DESRISKGATEWAY57=DCN3230134=4045052=20051118-05:0 +6:491=ATO16=0.0000000011=DES:fud630_2005111814=15.000017=013173043352 +0=031=1300000032=15.000037=13172606223 8= 15.00003 9= 254=155=CibntractZ60=20051118-05:06:49150=2151=values=1317304710131726 +062210 9= DCN3230163=0167=F00=200512207=TSE40=244=138.080000005113=06556=2005111 +7-23:06:4610=230
So i can see that if i put in the values into the split then it will pass them out,and then i should be able to grab them so first value would be the tag and then second would be the info.
Question is how do i get the split to do each tag that i need to search and more if need be.

In reply to Re^4: Message regex by minixman
in thread Message regex by minixman

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.