Text::LTSV ======= [![Build Status](https://travis-ci.org/naoya/perl-Text-LTSV.png?branch=master)](https://travis-ci.org/naoya/perl-Text-LTSV) [![Coverage Status](https://coveralls.io/repos/naoya/perl-Text-LTSV/badge.png?branch=master)](https://coveralls.io/r/naoya/perl-Text-LTSV) NAME ----- Text::LTSV - Labeled Tab Separated Value manipulator SYNOPSIS -------- use Text::LTSV; my $p = Text::LTSV->new; my $hash = $p->parse_line("hoge:foo¥tbar:baz¥n"); is $hash->{hoge}, 'foo'; is $hash->{bar}, 'baz'; my $data = $p->parse_file('./t/test.ltsv'); # or parse_file_utf8 is $data->[0]->{hoge}, 'foo'; is $data->[0]->{bar}, 'baz'; # Iterator interface my $it = $p->parse_file_iter('./t/test.ltsv'); # or parse_file_iter_utf8 while ($it->has_next) { my $hash = $it->next; ... } $it->end; # Only want certain fields? my $p = Text::LTSV->new; $p->want_fields('hoge'); $p->parse_line("hoge:foo¥tbar:baz¥n"); # Vise versa my $p = Text::LTSV->new; $p->ignore_fields('hoge'); $p->parse_line("hoge:foo¥tbar:baz¥n"); my $ltsv = Text::LTSV->new( hoge => 'foo', bar => 'baz', ); is $ltsv->to_s, "hoge:foo¥tbar:baz"; DESCRIPTION ----------- Labeled Tab-separated Values (LTSV) format is a variant of Tab-separated Values (TSV). Each record in a LTSV file is represented as a single line. Each field is separated by TAB and has a label and a value. The label and the value have been separated by ':'. cf: [ltsv.org](http://ltsv.org/) This format is useful for log files, especially HTTP access_log. This module provides a simple way to process LTSV-based string and files, which converts Key-Value pair(s) of LTSV to Perl's hash reference(s). AUTHOR ------- Naoya Ito LICENSE ------- This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.