NAME
BSON::Regex - BSON type wrapper for regular expressions
VERSION
version v1.12.2
SYNOPSIS
use BSON::Types ':all';
$regex = bson_regex( $pattern );
$regex = bson_regex( $pattern, $flags );
DESCRIPTION
This module provides a BSON type wrapper for a PCRE regular expression and optional flags.
ATTRIBUTES
pattern
A string containing a PCRE regular expression pattern (not a qr
object and without slashes). Default is the empty string.
flags
A string with regular expression flags. Flags will be sorted and duplicates will be removed during object construction. Supported flags include imxlsu
. Invalid flags will cause an exception. Default is the empty string.
METHODS
try_compile
my $qr = $regexp->try_compile;
Tries to compile the pattern
and flags
into a reference to a regular expression. If the pattern or flags can't be compiled, a exception will be thrown.
SECURITY NOTE: Executing a regular expression can evaluate arbitrary code if the re 'eval' pragma is in force. You are strongly advised to read re and never to use untrusted input with try_compile
.
TO_JSON
If the BSON_EXTJSON
option is true, returns a hashref compatible with MongoDB's extended JSON format, which represents it as a document as follows:
{"$regularExpression" : { pattern: "<pattern>", "options" : "<flags>"} }
If the BSON_EXTJSON
option is false, an error is thrown, as this value can't otherwise be represented in JSON.
AUTHORS
David Golden <david@mongodb.com>
Stefan G. <minimalist@lavabit.com>
COPYRIGHT AND LICENSE
This software is Copyright (c) 2020 by Stefan G. and MongoDB, Inc.
This is free software, licensed under:
The Apache License, Version 2.0, January 2004