Time::Duration::Parse - Parse string that represents time duration |
Time::Duration::Parse - Parse string that represents time duration
use Time::Duration::Parse;
my $seconds = parse_duration("2 minutes and 3 seconds"); # 123
Time::Duration::Parse is a module to parse human readable duration strings like 2 minutes and 3 seconds to seconds.
It does the opposite of duration_exact function in Time::Duration and is roundtrip safe. So, the following is always true.
use Time::Duration::Parse; use Time::Duration;
my $seconds = int rand 100000; is( parse_duration(duration_exact($seconds)), $seconds );
$seconds = parse_duration($string);
Parses duration string and returns seconds. When it encounters an error in a given string, it dies an exception saying ``Unknown timespec: blah blah blah''. This function is exported by default.
the Time::Duration::Parse::More manpage has the same interface as this module, but supports more expressions and memoization.
the Time::Duration manpage can be used for the reverse of this module: given a number of seconds it will provide an English description of the duration.
the Time::Duration::Object manpage provides an OO interface to the Time::Duration manpage.
the Time::Duration::LocaleObject manpage provides an OO interface to the
Time::Duration::??
modules, which provide language-specific versions
of the Time::Duration manpage.
the DateTime::Format::Duration manpage can be used to parse natural language
descriptions of durations, returning an instance of the DateTime::Duration manpage,
which can then be converted to seconds using the in_units()
method.
https://github.com/neilb/Time-Duration-Parse
Tatsuhiko Miyagawa <miyagawa@bulknews.net>
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
Some internal code is taken from Cache and Cache::Cache modules on CPAN.
Time::Duration::Parse - Parse string that represents time duration |