perl - Splitting the record using the delimiter -


i splitting record using delimiter '|'. encounter scenario pipe symbol(delimiter) preceded escape sequence,in case pipe symbol couldn't consider delimiter. how resolve using split? posted below sample piece of code

#!/usr/bin/perl use strict;  $id = 'hi|hello\|sir'; @code = split(/\|/,$id);  print $code[1]."\n"; 

the expected output above program "hello\|sir" actual output "**hello**".how handle delimiter preceded escape sequence using split.

thank you

you can't use split, text::csv_xs can parse format.

use text::csv_xs qw( );  $parser = text::csv_xs->new({    sep_char    => '|',    escape_char => '\\',    quote_char  => undef,    auto_diag   => 2,    binary      => 1, });  $parser->parse('hi|hello\|sir'); @fields = $parser->fields(); print("$fields[1]\n");             # hello|sir 

Comments

Popular posts from this blog

html - Outlook 2010 Anchor (url/address/link) -

javascript - Why does running this loop 9 times take 100x longer than running it 8 times? -

Getting gateway time-out Rails app with Nginx + Puma running on Digital Ocean -