NAME
Parse::Number::ID - Parse number from Indonesian text
VERSION
version 0.05
SYNOPSIS
use Parse::Number::ID qw(parse_number_id);
my @a = map {parse_number_id(text=>$_)}
("12.345,67", "-1,2e3", "x123", "1.23");
# @a = (12345.67, -1200, undef, 1.23)
DESCRIPTION
This module parses numbers from text, according to Indonesian rule of decimal- and thousand separators ("," and "." respectively, while English uses "." and ","). Since English numbers are more widespread, it will be parsed too whenever unambiguous, e.g.:
12.3 # 12.3
12.34 # 12.34
12.345 # 12345
This module does not parse numbers that are written as Indonesian words, e.g. "seratus dua puluh tiga" (123). See Lingua::ID::Words2Nums for that.
VARIABLES
None are exported by default, but they are exportable.
$Pat (REGEX)
A regex for quickly matching/extracting number from text. It's not 100% perfect (the extracted number might not be valid), but it's simple and fast.
FUNCTIONS
None of the functions are exported by default, but they are exportable.
SEE ALSO
DESCRIPTION
This module has Rinci metadata.
FUNCTIONS
None are exported by default, but they are exportable.
parse_number_id(%args) -> [status, msg, result, meta]
Parse number from Indonesian text.
Arguments ('*' denotes required arguments):
text* => str
The input text that contains number.
Return value:
Returns an enveloped result (an array). First element (status) is an integer containing HTTP status code (200 means OK, 4xx caller error, 5xx function error). Second element (msg) is a string containing error message, or 'OK' if status is 200. Third element (result) is optional, the actual result. Fourth element (meta) is called result metadata and is optional, a hash that contains extra information.
AUTHOR
Steven Haryanto <stevenharyanto@gmail.com>
COPYRIGHT AND LICENSE
This software is copyright (c) 2012 by Steven Haryanto.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.