NAME
Regexp::SQL::LIKE - Translate SQL LIKE pattern to a regular expression
VERSION
version 0.001
SYNOPSIS
use Regexp::SQL::LIKE 'to_regexp';
my $re = to_regexp( "Hello %" ); # returns qr/^Hello .*/
DESCRIPTION
This module converts an SQL LIKE pattern to its Perl regular expression equivalent.
Currently, only %
and .
wildcards are supported and only \
is supported as an escape character.
No functions are exported by default. You may rename a function on import as follows:
use Regexp::SQL::Like to_regexp => { -as => 'regexp_from_like' };
See Sub::Exporter for more details on import customization.
FUNCTIONS
to_regexp
my $re = to_regexp( "Hello %" );
This function converts an SQL LIKE pattern into an equivalent regular expression. A %
character matches any number of characters like .*
and a .
character matchs a single character. Backspaces may be used to escape %
, .
and \
itself:
to_regexp( "Match literal \%" );
All other characters are run through quotemeta()
to sanitize them.
The function returns a compiled regular expression.
SUPPORT
Bugs / Feature Requests
Please report any bugs or feature requests by email to bug-regexp-sql-like at rt.cpan.org
, or through the web interface at http://rt.cpan.org/Public/Dist/Display.html?Name=Regexp-SQL-LIKE. You will be automatically notified of any progress on the request by the system.
Source Code
This is open source software. The code repository is available for public review and contribution under the terms of the license.
http://github.com/dagolden/regexp-sql-like
git clone http://github.com/dagolden/regexp-sql-like
AUTHOR
David Golden <dagolden@cpan.org>
COPYRIGHT AND LICENSE
This software is Copyright (c) 2011 by David Golden.
This is free software, licensed under:
The Apache License, Version 2.0, January 2004