Группа :: Разработка/Perl
Пакет: perl-Regexp-Assemble
Главная Изменения Спек Патчи Sources Загрузить Gear Bugs and FR Repocop
Текущая версия: 0.38-alt1
Время сборки: 2 августа 2017, 13:55 ( 347.2 недели назад )
Размер архива: 110.37 Kb
Домашняя страница: http://www.cpan.org
Лицензия: Artistic
О пакете: Assemble multiple Regular Expressions into a single RE
Описание:
Список всех майнтейнеров, принимавших участие
в данной и/или предыдущих сборках пакета: Список rpm-пакетов, предоставляемый данным srpm-пакетом:
ACL:
Время сборки: 2 августа 2017, 13:55 ( 347.2 недели назад )
Размер архива: 110.37 Kb
Домашняя страница: http://www.cpan.org
Лицензия: Artistic
О пакете: Assemble multiple Regular Expressions into a single RE
Описание:
Regexp::Assemble takes an arbitrary number of regular expressions
and assembles them into a single regular expression (or RE) that
matches all that the individual REs match.
As a result, instead of having a large list of expressions to loop
over, a target string only needs to be tested against one expression.
This is interesting when you have several thousand patterns to deal
with. Serious effort is made to produce the smallest pattern possible.
It is also possible to track the original patterns, so that you can
determine which, among the source patterns that form the assembled
pattern, was the one that caused the match to occur.
You should realise that large numbers of alternations are processed
in perl's regular expression engine in O(n) time, not O(1). If you
are still having performance problems, you should look at using a
trie. Note that Perl's own regular expression engine will implement
trie optimisations in perl 5.10 (they are already available in
perl 5.9.3 if you want to try them out). `Regexp::Assemble' will
do the right thing when it knows it's running on a a trie'd perl.
(At least in some version after this one).
Some more examples of usage appear in the accompanying README. If
that file isn't easy to access locally, you can find it on a web
repository such as
http://search.cpan.org/dist/Regexp-Assemble/REA… or
http://cpan.uwinnipeg.ca/htdocs/Regexp-Assemble….
Текущий майнтейнер: Igor Vlasenko and assembles them into a single regular expression (or RE) that
matches all that the individual REs match.
As a result, instead of having a large list of expressions to loop
over, a target string only needs to be tested against one expression.
This is interesting when you have several thousand patterns to deal
with. Serious effort is made to produce the smallest pattern possible.
It is also possible to track the original patterns, so that you can
determine which, among the source patterns that form the assembled
pattern, was the one that caused the match to occur.
You should realise that large numbers of alternations are processed
in perl's regular expression engine in O(n) time, not O(1). If you
are still having performance problems, you should look at using a
trie. Note that Perl's own regular expression engine will implement
trie optimisations in perl 5.10 (they are already available in
perl 5.9.3 if you want to try them out). `Regexp::Assemble' will
do the right thing when it knows it's running on a a trie'd perl.
(At least in some version after this one).
Some more examples of usage appear in the accompanying README. If
that file isn't easy to access locally, you can find it on a web
repository such as
http://search.cpan.org/dist/Regexp-Assemble/REA… or
http://cpan.uwinnipeg.ca/htdocs/Regexp-Assemble….
Список всех майнтейнеров, принимавших участие
в данной и/или предыдущих сборках пакета: Список rpm-пакетов, предоставляемый данным srpm-пакетом:
- perl-Regexp-Assemble