Provided by: libstring-scanf-perl_2.1-3_all bug

NAME

       String::Scanf - emulate sscanf() of the C library

SYNOPSIS

           use String::Scanf; # imports sscanf()

           ($a, $b, $c, $d) = sscanf("%d+%d %f-%s", $input);
           ($e, $f, $g, $h) = sscanf("%x %o %s:%3c"); # input defaults to $_

           $r = String::Scanf::format_to_re($f);

       or

           # works only for Perl 5.005 or later
           use String::Scanf qw(); # import nothing

           my $s1 = String::Scanf->new("%d+%d %f-%s");
           my $s2 = String::Scanf->new("%x %o %s:%3c");

           ($a, $b, $c, $d) = $s1->sscanf($input);
           ($e, $f, $g, $h) = $s2->sscanf(); # input defaults to $_

DESCRIPTION

       String::Scanf supports scanning strings for data using formats similar to the libc/stdio
       sscanf().

       The supported sscanf() formats are as follows:

       %d  Decimal integer, with optional plus or minus sign.

       %u  Decimal unsigned integer, with optional plus sign.

       %x  Hexadecimal unsigned integer, with optional "0x" or "0x" in front.

       %o  Octal unsigned integer.

       %e %f %g
           (The [efg] work identically.)

           Decimal floating point number, with optional plus or minus sign, in any of these
           formats:

               1
               1.
               1.23
               .23
               1e45
               1.e45
               1.23e45
               .23e45

           The exponent has an optional plus or minus sign, and the "e" may also be "E".

           The various borderline cases like "Inf" and "Nan" are not recognized.

       %s  A non-whitespace string.

       %c  A string of characters.  An array reference is returned containing the numerical
           values of the characters.

       %%  A literal "%".

       The sscanf() formats [pnSC] are not supported.

       The %s and %c have an optional maximum width, e.g. %4s, in which case at most so many
       characters are consumed (but fewer characters are also accecpted).

       The numeric formats may also have such a width but it is ignored.

       The numeric formats may have "[hl]" before the main option, e.g. %hd, but since such
       widths have no meaning in Perl, they are ignored.

       Non-format parts of the parameter string are matched literally (e.g. ":" matches as ":"),
       expect that any whitespace is matched as any whitespace (e.g. " " matches as "\s+").

WARNING

       The numeric formats match only something that looks like a number, they do not care
       whether it fits into the numbers of Perl.  In other words, 123e456789 is valid for
       "sscanf()", but quite probably it won't fit into your Perl's numbers.  Consider using the
       various Math::* modules instead.

AUTHOR, COPYRIGHT AND LICENSE

       Jarkko Hietaniemi <jhi@iki.fi>

       Copyright (c) 2002,2004 Jarkko Hietaniemi.  All rights reserved.

       This program is free software; you can redistribute it and/or modify it under the same
       terms as Perl itself.