<?xml version="1.0" encoding="windows-1252"?>
<node id="976604" title="Re^2: Regular expression quantifiers and the /gsmx modifiers" created="2012-06-16 18:17:27" updated="2012-06-16 18:17:27">
<type id="11">
note</type>
<author id="80839">
davis</author>
<data>
<field name="doctext">
&lt;p&gt;Damn. I completely missed that.&lt;/p&gt;

&lt;code&gt;
#!/usr/bin/perl

use warnings;
use strict;
use Data::Dumper;


my $vg_details = '
   --- Physical volumes ---
   PV Name                     /dev/dsk/c14t3d1
   PV Name                     /dev/dsk/c15t3d1 Alternate Link
   PV Status                   available                
   Total PE                    15997   
   Free PE                     0       
   Autoswitch                  On        
   Proactive Polling           On               
';

while($vg_details =~ m/^\s*PV\s+Name\s*(?&lt;pv_name&gt;\S+)\s*$ \n
    (^\s*PV\s+Name\s+(?&lt;alt_link&gt;\S+)\s+Alternate\s+Link\s*$ \n){0,20}   # skip them
    ^\s*PV\s+Status\s+(?&lt;pv_status&gt;\S+)\s*$ \n
    ^\s*Total\s+PE\s+(?&lt;total_pe&gt;\S+)\s*$ \n
    ^\s*Free\s+PE\s+(?&lt;free_pe&gt;\d+)\s*$ \n
    ^\s*Autoswitch\s+(?&lt;autoswitch&gt;\S+)\s*$ \n
    ^\s*Proactive\s+Polling\s+(?&lt;proactive_polling&gt;\S+)\s*$ \n/gsmx) {
    my $pv_name           = $+{pv_name};
    print "matched $pv_name";
}
&lt;/code&gt;
&lt;p&gt;
Seems to DWIM. I genuinely cannot believe I've been gawping at that for so long. My thanks.
&lt;/p&gt;

&lt;!-- Node text goes above. Div tagsshould contain sig only --&gt;
&lt;div class="pmsig"&gt;&lt;div class="pmsig-80839"&gt;
&lt;br&gt;davis&lt;br&gt;
&lt;div class="pmsig-80839"&gt;

&lt;br&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;/div&gt;</field>
<field name="root_node">
976599</field>
<field name="parent_node">
976602</field>
</data>
</node>
