Date: Mon, 26 Jul 2004 09:18:22 +0200 From: Mathias Samuelson <mathias.samuelson@proact.se> To: iaccounts@ibctech.ca Cc: freebsd-questions@freebsd.org Subject: Re: Perl split() question (OT)... Message-ID: <4104B03E.3080102@proact.se>
next in thread | raw e-mail | index | archive | help
Steve Bertrand wrote: > Perl hackers -- Figured someone would have a reasonably quick, easy answer > for this: > > I am trying to read through a file, line-by-line, and I want to extract > the text in between the [ and ] characters. I would normally half the line > by split() - ing the line first by [ as follows: > > if ($logLine =~ /$struct$structStart/) { > @lineArray = split (/[/, $logLine); > > and then further, half again later using the ]. However, Perl does not > like it when I search for [, as it thinks I am trying to use a regex. I > have tried to escape the pattern, to no avail. > > Is there a 'special' escape for this, and more importantly, is there an > easier way to extract data from a line of a file without having to split > it up twice? > > An example of the line I'm trying to get the contents out of is this: > > | "LRED[Conversation started on 03 Feb 21:51:11] > > and I need the data between [ ... ]. > > I know it's OT, but hopefully someone can help me out. > > Tks! > > Steve Something like this perhaps: while(<>) { /.*\[(.*)\].*/; $text = $1; } Rgds Mathias
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4104B03E.3080102>