NAME
    Regexp::Pattern::JSON - Regexp patterns to match JSON

VERSION
    This document describes version 0.004 of Regexp::Pattern::JSON (from
    Perl distribution Regexp-Pattern-JSON), released on 2018-09-12.

SYNOPSIS
     use Regexp::Pattern; # exports re()
     my $re = re("JSON::array");

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

PATTERNS
    *   array

        Match a JSON array.

        Examples:

         "[]" =~ re("JSON::array");  # matches

         "[1, true, \"abc\"]" =~ re("JSON::array");  # matches

         # Missing closing bracket
         "[1" =~ re("JSON::array");  # doesn't match

    *   number

        Match a JSON number literal.

        Examples:

         12 =~ re("JSON::number");  # matches

         -34 =~ re("JSON::number");  # matches

         1.23 =~ re("JSON::number");  # matches

         "-1.23e2" =~ re("JSON::number");  # matches

    *   object

        Match a JSON object (a.k.a. hash/dictionary).

        Examples:

         "{}" =~ re("JSON::object");  # matches

         "{\"a\":1}" =~ re("JSON::object");  # matches

         # Missing closing curly bracket
         "{\"a\":1" =~ re("JSON::object");  # doesn't match

         # Unquoted key
         "{a: 1}" =~ re("JSON::object");  # doesn't match

    *   string

        Match a JSON string literal.

        Examples:

         "\"\"" =~ re("JSON::string");  # matches

         # Single quotes are not string delimiters
         "''" =~ re("JSON::string");  # doesn't match

         "\"\\n\"" =~ re("JSON::string");  # matches

         "\"contains \\\" double quote\"" =~ re("JSON::string");  # matches

    *   value

        Match a JSON value.

        Examples:

         "true" =~ re("JSON::value");  # matches

         "[]" =~ re("JSON::value");  # matches

         "{}" =~ re("JSON::value");  # matches

         -1 =~ re("JSON::value");  # matches

         "\"\"" =~ re("JSON::value");  # matches

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

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

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

    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
    JSON::Decode::Regexp

    Regexp::Common::json

AUTHOR
    perlancar <perlancar@cpan.org>

COPYRIGHT AND LICENSE
    This software is copyright (c) 2018 by perlancar@cpan.org.

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