The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.

Changes for version 0.925 - 2019-06-17

  • Changed the primary usage model from inheritance-based to regular use in main.
  • A new class for text parsing rules created Text::Parser::Rule (#17).
  • Import functions from String::Util, Scalar::Util, String::Util::Match, String::Util::Range, and String::Index. These can be accessed inside the ExAWK string rules directly (#44)
  • Added new methods to Text::Parser called add_rule to create rules (#37), and clear_rules to delete rules (#40)
  • Added new methods to Text::Parser called BEGIN_rule and END_rule (#47). The current line is not accessible in this rule.
  • Added new method join_range available when auto_split => 1 (#38)
  • Rules support range shortcuts like ${3+}, @{2+}, and \@{3+} (#39), (#45)
  • Added ability to create parse-time variables accessible across rules such as ~var (#48)

Documentation

A manual for the Text::Parser class
A comparison of text parsing with native Perl and Text::Parser
A manual for ExAWK (extended AWK) syntax

Modules

Simplifies text parsing. Easily extensible to parse any text format.
A role that adds the ability to auto-split a line into fields
Exceptions for Text::Parser
Adds multi-line support to the Text::Parser object.
Makes it possible to write AWK-style parsing rules for Text::Parser