in reply to capture optional text

#!/usr/bin/perl # http://perlmonks.org/?node_id=1190504 use strict; use warnings; use Data::Dumper; my %hosts = map /(\S+)\s+#*(.*)/, <DATA>; print Dumper \%hosts; __DATA__ XYZ1ADAIQ1 #AMI XYZ1ADECQ1 #OAG XYZ1ADEDQ1 XYZ1ADEDQ2 ##DMS Host

Replies are listed 'Best First'.
Re^2: capture optional text
by Lotus1 (Vicar) on May 18, 2017 at 14:40 UTC

    I like the idea of the zero or more match, (.*), inside the capture to make it match even if the comment isn't there. Thanks.

      It will also match "malformed" comments without a leading #.

        I read it that the #'s are optional, so it's not really "malformed", although no test case for this was provided :)