NAME
   Regexp::Pattern::Float - Regexp patterns related to floating (decimal)
   numbers

VERSION
   This document describes version 0.001 of Regexp::Pattern::Float (from
   Perl distribution Regexp-Pattern-Float), released on 2020-05-27.

SYNOPSIS
    use Regexp::Pattern; # exports re()
    my $re = re("Float::float");

DESCRIPTION
   Regexp::Pattern is a convention for organizing reusable regex patterns.

PATTERNS
   *   float

       Floating number (decimal or exponent form, or Inf/NaN).

       Examples:

        "" =~ re("Float::float");  # DOESN'T MATCH

        123 =~ re("Float::float");  # matches

        "+123." =~ re("Float::float");  # matches

        "+12.3" =~ re("Float::float");  # matches

        "-.123" =~ re("Float::float");  # matches

        "123e1" =~ re("Float::float");  # matches

        "123.e2" =~ re("Float::float");  # matches

        "-1.23E+3" =~ re("Float::float");  # matches

        "+.5e-3" =~ re("Float::float");  # matches

        "Inf" =~ re("Float::float");  # matches

        "-Inf" =~ re("Float::float");  # matches

        "+infinity" =~ re("Float::float");  # matches

        "infini" =~ re("Float::float");  # DOESN'T MATCH

       nan.

        "NaN" =~ re("Float::float");  # matches

       nan.

        "nan" =~ re("Float::float");  # matches

       nan does not recognize sign.

        "+NaN" =~ re("Float::float");  # DOESN'T MATCH

       nan does not recognize sign.

        "-NaN" =~ re("Float::float");  # DOESN'T MATCH

        "abc" =~ re("Float::float");  # DOESN'T MATCH

   *   float_decimal

       Floating number (decimal form, e.g. +12, -12.3, .4, -5.).

       Examples:

        "" =~ re("Float::float_decimal");  # DOESN'T MATCH

        123 =~ re("Float::float_decimal");  # matches

        "+123" =~ re("Float::float_decimal");  # matches

        -123 =~ re("Float::float_decimal");  # matches

        "123." =~ re("Float::float_decimal");  # matches

        "+123." =~ re("Float::float_decimal");  # matches

        "-123." =~ re("Float::float_decimal");  # matches

        "123.0" =~ re("Float::float_decimal");  # matches

        "+123.0" =~ re("Float::float_decimal");  # matches

        "-123.0" =~ re("Float::float_decimal");  # matches

        123.0456 =~ re("Float::float_decimal");  # matches

        "+123.0456" =~ re("Float::float_decimal");  # matches

        -123.0456 =~ re("Float::float_decimal");  # matches

        ".5" =~ re("Float::float_decimal");  # matches

        "+.5" =~ re("Float::float_decimal");  # matches

        "-.5" =~ re("Float::float_decimal");  # matches

        "." =~ re("Float::float_decimal");  # DOESN'T MATCH

        "+." =~ re("Float::float_decimal");  # DOESN'T MATCH

        "-." =~ re("Float::float_decimal");  # DOESN'T MATCH

       Exponent form.

        "1e1" =~ re("Float::float_decimal");  # DOESN'T MATCH

       infinity.

        "Inf" =~ re("Float::float_decimal");  # DOESN'T MATCH

       nan.

        "NaN" =~ re("Float::float_decimal");  # DOESN'T MATCH

        "abc" =~ re("Float::float_decimal");  # DOESN'T MATCH

   *   float_decimal_or_exp

       Floating number (decimal or exponent form).

       Examples:

        "" =~ re("Float::float_decimal_or_exp");  # DOESN'T MATCH

        123 =~ re("Float::float_decimal_or_exp");  # matches

        "+123." =~ re("Float::float_decimal_or_exp");  # matches

        "+12.3" =~ re("Float::float_decimal_or_exp");  # matches

        "-.123" =~ re("Float::float_decimal_or_exp");  # matches

        "123e1" =~ re("Float::float_decimal_or_exp");  # matches

        "123.e2" =~ re("Float::float_decimal_or_exp");  # matches

        "-1.23E+3" =~ re("Float::float_decimal_or_exp");  # matches

        "+.5e-3" =~ re("Float::float_decimal_or_exp");  # matches

       infinity.

        "Inf" =~ re("Float::float_decimal_or_exp");  # DOESN'T MATCH

       nan.

        "NaN" =~ re("Float::float_decimal_or_exp");  # DOESN'T MATCH

   *   float_exp

       Floating number (exponent form, e.g. 1.2e+3, -1.2e-3).

       Examples:

        "" =~ re("Float::float_exp");  # DOESN'T MATCH

       Decimal form.

        123 =~ re("Float::float_exp");  # DOESN'T MATCH

       Decimal form.

        "+123" =~ re("Float::float_exp");  # DOESN'T MATCH

       Decimal form.

        -123 =~ re("Float::float_exp");  # DOESN'T MATCH

        "123e1" =~ re("Float::float_exp");  # matches

        "12.3E2" =~ re("Float::float_exp");  # matches

        "-123.e+3" =~ re("Float::float_exp");  # matches

        "+.5e-3" =~ re("Float::float_exp");  # matches

       infinity.

        "Inf" =~ re("Float::float_exp");  # DOESN'T MATCH

       nan.

        "NaN" =~ re("Float::float_exp");  # DOESN'T MATCH

   *   float_inf

       Infinity.

       Examples:

        "" =~ re("Float::float_inf");  # DOESN'T MATCH

        123 =~ re("Float::float_inf");  # DOESN'T MATCH

        "Inf" =~ re("Float::float_inf");  # matches

        "-Inf" =~ re("Float::float_inf");  # matches

        "+infinity" =~ re("Float::float_inf");  # matches

        "infini" =~ re("Float::float_inf");  # DOESN'T MATCH

       nan.

        "NaN" =~ re("Float::float_inf");  # DOESN'T MATCH

   *   float_nan

       NaN.

       Examples:

        "" =~ re("Float::float_nan");  # DOESN'T MATCH

        123 =~ re("Float::float_nan");  # DOESN'T MATCH

       infinity.

        "Inf" =~ re("Float::float_nan");  # DOESN'T MATCH

       nan.

        "NaN" =~ re("Float::float_nan");  # matches

       nan.

        "nan" =~ re("Float::float_nan");  # matches

       nan does not recognize sign.

        "+NaN" =~ re("Float::float_nan");  # DOESN'T MATCH

       nan does not recognize sign.

        "-NaN" =~ re("Float::float_nan");  # DOESN'T MATCH

   *   ufloat

       Unsigned floating number (decimal or exponent form, or Inf/NaN).

       Examples:

        "" =~ re("Float::ufloat");  # DOESN'T MATCH

        123 =~ re("Float::ufloat");  # matches

        "+123." =~ re("Float::ufloat");  # matches

        "+12.3" =~ re("Float::ufloat");  # matches

        "-.123" =~ re("Float::ufloat");  # DOESN'T MATCH

        "123e1" =~ re("Float::ufloat");  # matches

        "123.e2" =~ re("Float::ufloat");  # matches

        "-1.23E+3" =~ re("Float::ufloat");  # DOESN'T MATCH

        "+.5e-3" =~ re("Float::ufloat");  # matches

        "Inf" =~ re("Float::ufloat");  # matches

        "-Inf" =~ re("Float::ufloat");  # DOESN'T MATCH

        "+infinity" =~ re("Float::ufloat");  # matches

        "infini" =~ re("Float::ufloat");  # DOESN'T MATCH

       nan.

        "NaN" =~ re("Float::ufloat");  # matches

       nan.

        "nan" =~ re("Float::ufloat");  # matches

       nan does not recognize sign.

        "+NaN" =~ re("Float::ufloat");  # DOESN'T MATCH

       nan does not recognize sign.

        "-NaN" =~ re("Float::ufloat");  # DOESN'T MATCH

        "abc" =~ re("Float::ufloat");  # DOESN'T MATCH

   *   ufloat_decimal

       Unsigned floating number (decimal form, e.g. 12, +12.3, .4, 5.).

       Examples:

        "" =~ re("Float::ufloat_decimal");  # DOESN'T MATCH

        123 =~ re("Float::ufloat_decimal");  # matches

        "+123" =~ re("Float::ufloat_decimal");  # matches

        -123 =~ re("Float::ufloat_decimal");  # DOESN'T MATCH

        "123." =~ re("Float::ufloat_decimal");  # matches

        "+123." =~ re("Float::ufloat_decimal");  # matches

        "-123." =~ re("Float::ufloat_decimal");  # DOESN'T MATCH

        "123.0" =~ re("Float::ufloat_decimal");  # matches

        "+123.0" =~ re("Float::ufloat_decimal");  # matches

        "-123.0" =~ re("Float::ufloat_decimal");  # DOESN'T MATCH

        123.0456 =~ re("Float::ufloat_decimal");  # matches

        "+123.0456" =~ re("Float::ufloat_decimal");  # matches

        -123.0456 =~ re("Float::ufloat_decimal");  # DOESN'T MATCH

        ".5" =~ re("Float::ufloat_decimal");  # matches

        "+.5" =~ re("Float::ufloat_decimal");  # matches

        "-.5" =~ re("Float::ufloat_decimal");  # DOESN'T MATCH

        "." =~ re("Float::ufloat_decimal");  # DOESN'T MATCH

        "+." =~ re("Float::ufloat_decimal");  # DOESN'T MATCH

        "-." =~ re("Float::ufloat_decimal");  # DOESN'T MATCH

       Exponent form.

        "1e1" =~ re("Float::ufloat_decimal");  # DOESN'T MATCH

       infinity.

        "Inf" =~ re("Float::ufloat_decimal");  # DOESN'T MATCH

       nan.

        "NaN" =~ re("Float::ufloat_decimal");  # DOESN'T MATCH

HOMEPAGE
   Please visit the project's homepage at
   <https://metacpan.org/release/Regexp-Pattern-Float>.

SOURCE
   Source repository is at
   <https://github.com/perlancar/perl-Regexp-Pattern-Float>.

BUGS
   Please report any bugs or feature requests on the bugtracker website
   <https://rt.cpan.org/Public/Dist/Display.html?Name=Regexp-Pattern-Float>

   When submitting a bug or request, please include a test-file or a patch
   to an existing test-file that illustrates the bug or desired feature.

SEE ALSO
   Regexp::Pattern::Int

   Sah schemas in Sah::Schemas::Float, e.g. Sah::Schema::ufloat

   Regexp::Pattern

   Some utilities related to Regexp::Pattern: App::RegexpPatternUtils,
   rpgrep from App::rpgrep.

AUTHOR
   perlancar <[email protected]>

COPYRIGHT AND LICENSE
   This software is copyright (c) 2020 by [email protected].

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