NAME
Regexp::Lexer - Lexer for regular expression of perl
SYNOPSIS
my
$tokens
= tokenize(
qr{\Ahello\s+world\z}
i);
DESCRIPTION
Regexp::Lexer is a lexer for regular expression of perl.
This module splits the regular expression string to tokens which has minimum meaning.
FUNCTIONS
tokenize($re:Regexp)
Tokenizes the regular expression.
This function takes an argument as
Regexp
, namely it must be regexp quoted variable (i.e.qr/SOMETHING/
). If notRegexp
argument is given, this function throws exception.This function returns the result like so;
{
tokens
=> [
{
char
=>
'\A'
,
index
=> 1,
type
=> {
id
=> 67,
name
=>
'EscapedBeginningOfString'
,
},
},
{
char
=>
'h'
,
index
=> 2,
type
=> {
id
=> 1,
name
=>
'Character'
,
},
},
...
],
modifiers
=> [
'^'
,
'i'
],
}
tokens
is the tokens list. Information abouttype
of token is located in the Regexp::Lexer::TokenType.modifiers
is the list of modifiers of regular expression. Please see also perlre.
SEE ALSO
LICENSE
Copyright (C) moznion.
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
AUTHOR
moznion <moznion@gmail.com>