phpman > perldoc > Regexp::Common::delimited(3pm)

Markdown | JSON | MCP    

NAME
    Regexp::Common::delimited -- provides a regex for delimited strings

SYNOPSIS
        use Regexp::Common qw /delimited/;

        while (<>) {
            /$RE{delimited}{-delim=>'"'}/  and print 'a \" delimited string';
            /$RE{delimited}{-delim=>'/'}/  and print 'a \/ delimited string';
        }

DESCRIPTION
    Please consult the manual of Regexp::Common for a general description of the works of this
    interface.

    Do not use this module directly, but load it via *Regexp::Common*.

  $RE{delimited}{-delim}{-cdelim}{-esc}
    Returns a pattern that matches a single-character-delimited substring, with optional internal
    escaping of the delimiter.

    When "-delim =" *S*> is specified, each character in the sequence *S* is a possible delimiter.
    There is no default delimiter, so this flag must always be specified.

    By default, the closing delimiter is the same character as the opening delimiter. If this is not
    wanted, for instance, if you want to match a string with symmetric delimiters, you can specify
    the closing delimiter(s) with "-cdelim =" *S*>. Each character in *S* is matched with the
    corresponding character supplied with the "-delim" option. If the "-cdelim" option has less
    characters than the "-delim" option, the last character is repeated as often as necessary. If
    the "-cdelim" option has more characters than the "-delim" option, the extra characters are
    ignored.

    If "-esc =" *S*> is specified, each character in the sequence *S* is the delimiter for the
    corresponding character in the "-delim=*S*" list. The default escape is backslash.

    For example:

       $RE{delimited}{-delim=>'"'}               # match "a \" delimited string"
       $RE{delimited}{-delim=>'"'}{-esc=>'"'}    # match "a "" delimited string"
       $RE{delimited}{-delim=>'/'}               # match /a \/ delimited string/
       $RE{delimited}{-delim=>q{'"}}             # match "string" or 'string'
       $RE{delimited}{-delim=>"("}{-cdelim=>")"} # match (string)

    Under "-keep" (See Regexp::Common):

    $1  captures the entire match

    $2  captures the opening delimiter

    $3  captures delimited portion of the string

    $4  captures the closing delimiter

  $RE{quoted}{-esc}
    A synonym for "$RE {delimited} {-delim => q {'"`}} {...}".

  $RE {bquoted} {-esc}
    This is a pattern which matches delimited strings, where the delimiters are a set of matching
    brackets. Currently, this comes 85 pairs. This includes the 60 pairs of bidirection paired
    brackets, as listed in <http://www.unicode.org/Public/UNIDATA/BidiBrackets.txt>.

    The other 25 pairs are the quotation marks, the double quotation marks, the single and double
    pointing quoation marks, the heavy single and double commas, 4 pairs of top-bottom parenthesis
    and brackets, 9 pairs of presentation form for vertical brackets, and the low paraphrase, raised
    omission, substitution, double substitution, and transposition brackets.

    In a future update, pairs may be added (or deleted).

    This pattern requires perl 5.14.0 or higher.

    For a full list of bracket pairs, inspect the output of "Regexp::Common::delimited::bracket_pair
    ()", which returns a list of two element arrays, each holding the Unicode names of matching pair
    of delimiters.

    The "{-esc => *S* }" works as in the "$RE {delimited}" pattern.

    If "{-keep}" is given, the following things will be captured:

    $1  captures the entire match

    $2  captures the opening delimiter

    $3  captures delimited portion of the string

    $4  captures the closing delimiter

SEE ALSO
    Regexp::Common for a general description of how to use this interface.

AUTHOR
    Damian Conway (damian AT conway.org)

MAINTENANCE
    This package is maintained by Abigail (*regexp-common AT abigail.be*).

BUGS AND IRRITATIONS
    Bound to be plenty.

    For a start, there are many common regexes missing. Send them in to *regexp-common AT abigail.be*.

LICENSE and COPYRIGHT
    This software is Copyright (c) 2001 - 2017, Damian Conway and Abigail.

    This module is free software, and maybe used under any of the following licenses:

     1) The Perl Artistic License.     See the file COPYRIGHT.AL.
     2) The Perl Artistic License 2.0. See the file COPYRIGHT.AL2.
     3) The BSD License.               See the file COPYRIGHT.BSD.
     4) The MIT License.               See the file COPYRIGHT.MIT.

Regexp::Common::delimited(3pm)
NAME SYNOPSIS DESCRIPTION SEE ALSO AUTHOR MAINTENANCE BUGS AND IRRITATIONS

Generated by phpman v3.7.12 Author: Che Dong Under GNU General Public License
2026-06-14 00:52 @216.73.216.200
CrawledBy Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)
Valid XHTML 1.0 TransitionalValid CSS!

^_back to top