Parser
NAME
Text::LTSV::Parser - LTSV (Labeled Tab Separated Value) parser
SYNOPSIS
use Text::LTSV::Parser;
## Single line
my $parser = Text::LTSV::Parser.new;
my $ltsv-line = "foo:bar\tbuz:qux\tjohn:paul";
my %ltsv = $parser.parse-line($ltsv-line); # {:buz("qux"), :foo("bar"), :john("paul")}
## Multi line
my $ltsv-text = "foo:bar\tbuz:qux\njohn:paul\tgeorge:ringo\n";
my @ltsvs = $parser.parse-text($ltsv-text); # Array[Array[Pair]]
for @ltsvs -> $ltsv {
say $ltsv.perl; # 1st: Array[Pair].new("foo" => "bar", "buz" => "qux")
# 2nd: Array[Pair].new("john" => "paul", "george" => "ringo")
}
DESCRIPTION
Text::LTSV::Parser is a parser for LTSV (Labeled Tab Separated Values).
METHODS
parse-line(Text::LTSV::Parser:D: Str $line) returns Array[Pair]
Parse one line as LTSV.
parse-text(Text::LTSV::Parser:D: Str $text) returns Array[Array[Pair]]
Parse multiple lines as LTSV. You can specify new line character to separate lines by $.nl
.
Default $.nl
is "\n"
;
TODO
Support want_fields
Support ignore_fields
SEE ALSO
AUTHOR
moznion <[email protected]>
COPYRIGHT AND LICENSE
Copyright 2015 moznion
This library is free software; you can redistribute it and/or modify it under the Artistic License 2.0.