-4

Possible Duplicate:
converting multline string to array

    my $text = "a=10|b=20|c=20|d=\' I am multing line string  A=10
dfasd fas
d
as df
asd
f a
sd
fas
d fsd \'|e=10"

 foreach my $pairing (split(/\|/,$text)) {
        print "$pairing ";
        my ($field,$value)=split(/=/,$pairing);
         print "**$field,$value**";
        }


its not printing  a= 10 , b=20 , c=20 , and 
d=I am multing line string  A=10 dfasd fas
    d
    as df
    asd
    f a
    sd
    fas
    d fsd , e =10 ?
Community
  • 1
  • 1
Tree
  • 9,532
  • 24
  • 64
  • 83

1 Answers1

2

Specify a limit for the second split:

#!/usr/bin/perl

use strict; use warnings;

my $text = "a=10|b=20|c=20|d=\' I am multing line string  A=10
dfasd fas
d
as df
asd
f a
sd
fas
d fsd \'|e=10";

foreach my $pairing (split qr{\|}, $text) {
    my ($field, $value) = split /=/, $pairing, 2;
    print "**$field,$value**\n";
}
Sinan Ünür
  • 116,958
  • 15
  • 196
  • 339