DateTime::Format::Builder::Parser::Regex

Section: User Contributed Perl Documentation (3)
Updated: 2021-03-25
Page Index
 

NAME

DateTime::Format::Builder::Parser::Regex - Regex based date parsing  

VERSION

version 0.83  

SYNOPSIS

    my $parser = DateTime::Format::Builder->create_parser(
        regex  => qr/^(\d\d\d\d)(\d\d)(\d\d)T(\d\d)(\d\d)(\d\d)$/,
        params => [qw( year month day hour minute second )],
    );

 

SPECIFICATION

In addition to the common keys, "Regex" supports:
regex

regex is a regular expression that should capture elements of the datetime string. This is a required element. This is the key whose presence indicates it's a specification that belongs to this class.

params

params is an arrayref of key names. The captures from the regex are mapped to these ($1 to the first element, $2 to the second, and so on) and handed to "DateTime->new". This is a required element.

extra

extra is a hashref of extra arguments you wish to give to "DateTime->new". For example, you could set the "year" or "time_zone" to defaults:

    extra => { year => 2004, time_zone => "Australia/Sydney" },

constructor is either an arrayref or a coderef. If an arrayref then the first element is a class name or object, and the second element is a method name (or coderef since Perl allows that sort of thing). The arguments to the call are anything in $p and anything given in the "extra" option above.

If only a coderef is supplied, then it is called with arguments of $self, $p and "extra".

In short:

    $self->$coderef( %{$p}, %{ $self->{extra} } );

The method is expected to return a valid DateTime object, or "undef" in event of failure, but can conceivably return anything it likes. So long as it's 'true'.

 

SEE ALSO

"datetime@perl.org" mailing list.

http://datetime.perl.org/

perl, DateTime, DateTime::Format::Builder  

SUPPORT

Bugs may be submitted at <https://github.com/houseabsolute/DateTime-Format-Builder/issues>.

I am also usually active on IRC as 'autarch' on "irc://irc.perl.org".  

SOURCE

The source code repository for DateTime-Format-Builder can be found at <https://github.com/houseabsolute/DateTime-Format-Builder>.  

AUTHORS

Dave Rolsky <autarch@urth.org>
Iain Truskett <spoon@cpan.org>
 

COPYRIGHT AND LICENSE

This software is Copyright (c) 2020 by Dave Rolsky.

This is free software, licensed under:

  The Artistic License 2.0 (GPL Compatible)

The full text of the license can be found in the LICENSE file included with this distribution.


 

Index

NAME
VERSION
SYNOPSIS
SPECIFICATION
SEE ALSO
SUPPORT
SOURCE
AUTHORS
COPYRIGHT AND LICENSE