in reply to Perl Log file extraction help required
G'day renjoooz,
Welcome to the monastery.
The special variable $` is not a good choice. I recommend you avoid using it whenever possible. Here's an extract of what perlvar has to say about it:
"The use of this variable anywhere in a program imposes a considerable performance penalty on all regular expression matches. ..."
Here's a script (pm_brace_extract.pl) that gives the required output with the input you provided.
#!/usr/bin/env perl use 5.010; use strict; use warnings; while (<DATA>) { my @caught = /\{([^}]+)/g; next unless @caught; say for @caught; } __DATA__ ................... ................... <CMD> windowSelect 444.235666.5542.2656565.1255 <CMD> spaceObject -fixSide bottom -space 0 Spacing instances ... Adding vertical channel spacing of 0.0000um between the following selected instances/modules: {dupe_core/pads/tran_w_1} {dupe_core/pads/tran_w_1} {dupe_core/pads/htran_d_13} {dupe_core/pads/rec_p_14} {dup/pads/VDD_ight1} {dup/pa/GND_g} {dummy_core/pads/dummy_dig22} {dupe_core/pads/dummy_dig23} {dupe_core/pads/comp_pad1} {dupe_core/pad/CORE_vdd1} <CMD> deselectAll <CMD> selectInst dummy_core/pads/IO_gnd_right18 <CMD> selectInst dummy_core/pads/IO_vdd_right18 <CMD> uiSetTool move5 .............. ............... ....................
Output:
$ pm_brace_extract.pl dupe_core/pads/tran_w_1 dupe_core/pads/tran_w_1 dupe_core/pads/htran_d_13 dupe_core/pads/rec_p_14 dup/pads/VDD_ight1 dup/pa/GND_g dummy_core/pads/dummy_dig22 dupe_core/pads/dummy_dig23 dupe_core/pads/comp_pad1 dupe_core/pad/CORE_vdd1
-- Ken
|
---|
Replies are listed 'Best First'. | |
---|---|
Re^2: Perl Log file extraction help required
by renjoooz (Initiate) on Sep 22, 2012 at 07:20 UTC | |
by kcott (Archbishop) on Sep 22, 2012 at 07:51 UTC | |
by Generoso (Prior) on Sep 22, 2012 at 07:55 UTC | |
by kcott (Archbishop) on Sep 22, 2012 at 08:22 UTC | |
by renjoooz (Initiate) on Sep 22, 2012 at 09:01 UTC |
In Section
Seekers of Perl Wisdom