Buddy, this is your code only, i have just inserted Print statement.
use strict; use warnings; #use Test::More tests => 1; my $in = 'eab12345 id=00000 pgrp=abcdefgh groups=abcdefgh home=/home/e +ab12345 shell=/usr/bin/ksh gecos=AB/C/Y0000/ABC/XYZ RTYUI, LMNOP *CON +TRACTOR* (AS 00000) auditclasses=general,files,TCPIPlogin=true su=tru +e rlogin=true daemon=true admin=false sugroups=ALL admgroups= tpath=n +osak ttys=ALL expires=0 auth1=SYSTEM auth2=NONE umask=00 registry=AD +SYSTEM=AD logintimes= loginretries=5 pwdwarntime=5 account_locked=fal +se minage=0 maxage=13 maxexpired=0 minalpha=1 minother=1 mindiff=1 ma +xrepeats=2 minlen=8 histexpire=13 histsize=8 pwdchecks= dictionlist=/ +abc/def/ghi/jkl default_roles= fsize=-1 cpu=-1 data=-1 stack=65536 co +re=000000 rss=65536 nofiles=2000 time_last_login=1512632113 time_last +_unsuccessful_login=1505304923 tty_last_login=ssh tty_last_unsuccessf +ul_login=ssh host_last_login=0.000.000.000 host_last_unsuccessful_log +in=0.000.000.000 unsuccessful_login_count=0 roles= '; my %rec; my $key; for my $term (split /=/, $in) { my ($value, $newkey) = ($term =~ /(.*?) (\S+)$/); $rec{$key} = $value if defined $key; $key = $newkey; print "KEY = $key, VALUE = $value\n"; }
In reply to Re^4: Splitting a long row with multiple delimiters.
by dipit
in thread Splitting a long row with multiple delimiters.
by dipit
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |