Main > Free Download Search >

Free regexp reference software for linux

regexp reference

Sponsored Links
Sponsored Links
Secleted [ 0 ] software to compare
Results 1 - 15 of about 1180
Regexp::Extended 0.01

Regexp::Extended 0.01


Regexp::Extended is a Perl wrapper that extends the re module with new features. more>>
Regexp::Extended is a Perl wrapper that extends the re module with new features.

SYNOPSIS

use Regexp::Extended qw(:all);

# (?...): named parameters
$date =~ /(? d+)-(? d+)-(? d+)/;
if ("2002-10-30" =~ /$date/) {
print "The date is : $::year->[0]-$::month->[0]-$::day->[0]n";
}

# You can also access individial matches in ()* or ()+
"1234" =~ /(? d)+/;
print "Digit 1 is : $::digit->[0]n";
print "Digit 2 is : $::digit->[1]n";
...

# You can also modify individual matches
"1234" =~ /(? d)+/;
$::digit->[0] = 99;
$::digit->[1] = 88;
print "Modified string is: " . rebuild("1234"); # "998834"

# (?*...): upto a certain pattern
$text = "this is some italic text";
$text =~ /((?*)) /; # $1 = "italic"

# (?+...): upto and including a certain pattern
$text = "this is some italic text";
$text =~ /((?+))/; # $1 = "italic"

# You can also use fonctions inside patterns:

sub foo {
return "foo";
}

"foo bar" =~ /((?&foo()))/; # $1 => "foo"

Rexexp::Extended is a simple wrapper arround the perl rexexp syntax. It uses the overload module to parse constant qr// expressions and substitute known operators with an equivalent perl re.

<<less
Download (0.005MB)
Added: 2007-04-03 License: Perl Artistic License Price:
934 downloads
Regexp::Genex 0.07

Regexp::Genex 0.07


Regexp::Genex - get the strings a regex will match, with a regex. more>>
Regexp::Genex - get the strings a regex will match, with a regex.

SYNPOSIS

# first try:
$ perl -MRegexp::Genex=:all -le print for strings(qr/a(b|c)d{2,3}e*/)

$ perl -x `pmpath Regexp::Genex`
#!/usr/bin/perl -l

use Regexp::Genex qw(:all);

$regex = shift || "a(b|c)d{2,4}?";

print "Trying: $regex";
print for strings($regex);
# abdd
# abddd
# abdddd
# acdd
# acddd
# acdddd


print "nThe regex code for that was:nqr/";
print strings_rx($regex);
print "/xn";

my $generator = generator($regex);
print "Taking first two using generator";
print $generator->() for 1..2;

my $big_rx = b*?c*?d*?; # * becomes {0,20}

my $big = generator($big_rx, ($max_length = 100) );

print "Taking string 100 of $big_rx";
print $big->(100); # (caveats below)
# ccccdddddddddddddddd NOT dx100 as you may expect

<<less
Download (0.008MB)
Added: 2007-08-16 License: Perl Artistic License Price:
800 downloads
Regexp::Parser 0.20

Regexp::Parser 0.20


Regexp::Parser is a Perl module for parsing regexes. more>>
Regexp::Parser is a Perl module for parsing regexes.

This module parses regular expressions (regexes). Its default "grammar" is Perl 5.8.4s regex set. Grammar is quoted because the module does not so much define a grammar as let each matched node state what it expects to match next, but there is not currently a way of extracting a complete grammar. This may change in future versions.

This module is designed as a replacement (though not drop-in) for my old YAPE::Regex modules.

USAGE:

Creating an Instance

To use this module as is, load it, and create an instance:

use Regexp::Parser;
my $parser = Regexp::Parser->new;

Setting a Regex

To have the parser work on a specific regex, you can do use any of the following methods:

$parser = Regexp::Parser->new($regex)

You can send the regex to be parsed as the argument to the constructor.

$parser->regex($regex)

Clears the parsers memory and sets $regex as the regex to be parsed.

These two approaches do an initial pass over the regex to make sure it is well-formed -- any warnings or errors will be determined during this initial pass.

<<less
Download (0.040MB)
Added: 2006-09-25 License: Perl Artistic License Price:
1125 downloads
Web Reference Database 0.9.0

Web Reference Database 0.9.0


Web Reference Database is a bibliographic manager that can import and export references in various formats. more>>
Web Reference Database is a bibliographic manager that can import and export references in various formats (including BibTeX, Endnote, MODS XML, and OpenOffice).
It can make formatted lists of citations in HTML, RTF, PDF, or LaTeX, and offers powerful searching, rich metadata, and RSS support
Enhancements:
- This release offers major function enhancements and bugfixes.
- Batch import from various bibliographic formats (including BibTeX, Endnote, RIS, ISI, and MODS XML) is now supported, as is import from a PubMed ID.
- An OpenDocument spreadsheet for use with OpenOffice.org can be exported, and formatted citation lists can be generated as HTML, RTF, PDF, or LaTeX. An SRU/W service and support for unAPI, OpenURL, and COinS metadata have been added.
- These allow the data to be used by the next generation of bibliographic clients.
- A new command line client is also included.
<<less
Download (0.89MB)
Added: 2006-10-27 License: GPL (GNU General Public License) Price:
1093 downloads
Regexp::Parser::Handlers 0.20

Regexp::Parser::Handlers 0.20


Regexp::Parser::Handlers is a Perl module with handlers for Perl 5 regexes. more>>
Regexp::Parser::Handlers is a Perl module with handlers for Perl 5 regexes.

This module holds the init() method for the Regexp::Parser class, which installs all the handlers for standard Perl 5 regexes. This documentation contains a sub-classing tutorial.

SUB-CLASSING

I will present two example sub-classes, Regexp::NoCode, and Regexp::AndBranch.

Parser Internals

The parser object is a hash reference with the following keys:

regex

A reference to the original string representation of the regex.

len

The length of the original string representation of the regex.

tree

During the first pass, tree is undef, which instructs the object() method not to actually create any objects. Afterwards, it is an array reference of (node) objects.

stack

Initially an array reference, used to store the tree as a new scope is entered and then exited. The general concept is:

if (into_scope) {
push STACK, TREE;
TREE = CURRENT->DATA;
}
if (outof_scope) {
TREE = pop STACK;
}

After the tree has been created, this key is deleted; this gives the code a way to be sure compilation was successful.

maxpar

The highest number of parentheses. It will end up being identical to nparen, but it is incremented during the initial pass, so that on the second pass (the tree-building), it can distinguish back-references from octal escapes. (The source code to Perls regex compiler does the same thing.)

nparen

The number of OPENs (capturing groups) in the regex.

captures

An array reference to the open nodes.

flags

An array reference of flag values. When a scope is entered, the top value is copied and pushed onto the stack. When a scope is left, the top value is popped and discarded.

It is important to do this copy-and-push before you do any flag-parsing, if youre adding a handle that might parse flags, because you do not want to accidentally affect the previous scopes flag values.

Here is example code from the handler for (?ismx) and (?ismx:...):

# (?i:...) {next} }, qw< c) atom >;
}

for (split //, $on) {
if (my $h = $S->can("FLAG_$_")) {
my $v = $h->(1); # 1 means this is on
if ($v) { &Rf |= $v } # turn the flag on
else { ... } # the flags value is 0
next;
}
# throw an error if the flag isnt supported
}

for (map "FLAG_$_", split //, $off) {
if (my $h = $S->can("FLAG_$_")) {
my $v = $h->(0); # 0 means this is off
if ($v) { &Rf &= ~$v } # turn the flag off
else { ... } # the flags value is 0
next;
}
# throw an error if the flag isnt supported
}

Youll probably not be adding handlers that have to parse flags, but if you do, remember to follow this model correctly.

next

An array reference of what handles (or "rules") to try to match next.

<<less
Download (0.040MB)
Added: 2006-10-13 License: Perl Artistic License Price:
1107 downloads
Regexp::Ignore 0.03

Regexp::Ignore 0.03


Regexp::Ignore is a Perl module that let us ignore unwanted parts, while parsing text. more>>
Regexp::Ignore is a Perl module that let us ignore unwanted parts, while parsing text.

WARNING

This is an alpha code. Really. It was written in the end of 2001. It is not yet checked much. The only reason I submit it to CPAN that early is to get feedback about the idea, and hopefully to get some help in finding the many bugs that must still be in it. In our company we use this code, though, and for our needs it runs well.

SYNOPSIS

use Regexp::IgnoreXXX;

my $rei = new Regexp::IgnoreXXX($text,
"");
# split the wanted text from the unwanted text
$rei->split();

# use substitution function
$rei->s((var)_(d+), $2$1, gi);
$rei->s((d+):(d+), $2:$1);

# merge back to get the resulted text
my $changed_text = $rei->merge();

Markup languages, like HTML, are difficult to parse. The reason is that you can have a line like:

< font size=+1 >H< /font >ello < font size=+1 >W< /font >orld

How can we find the string "Hello World", in the above line, and replace it by "Hello Universe" (which is a lot deeper)? Or how can we run a speller on the text and replace the mistakes with suggestions for the correct spelling?
This module come to help you doing exactly that.

Actually the module let you first split the text to the parts you are interested in and the unwanted parts. For example, all the HTML tags can be taken as unwanted parts.

Then it let you parse the part you are interested in (while totally ignoring the unwanted parts).

In the end it let you merge back the unwanted parts with the possibly changed parts you were interested in.

There is just one catch. It uses the assumption that when you replace the above "Hello World" to "Hello Universe", all the unwanted parts between the start of the match to the end of the match, will be pushed after the text that will replace the match. This is not really understood right? Look at the example:
The text:

< font size=+1 >H< /font >ello < font size=+1 >W< /font >orld

will be first split and we will get the "cleaned" text:

Hello World

Then we can parse it using something like:

s/Hello World/Hello Universe/;

This will give us the changed "cleaned" text:

Hello Universe

When we will merge with the unwanted parts we will get

< font size=+1 >Hello Universe< /font >< font size=+1 >< /font >

So, the unwanted parts in the match were pushed after the replacer.

<<less
Download (0.070MB)
Added: 2007-06-29 License: Perl Artistic License Price:
847 downloads
regular expression parser 1.1

regular expression parser 1.1


regular expression parser is a C++ regexp parser that accomplishes The Open Group specification Issue 6. more>>
regular expression parser is a C++ regexp parser that accomplishes The Open Group specification Issue 6, IEEE Std 1003.1, 2004 Edition.

regular expression parser allows you to parse input using regular expressions, and to retrieve parsed sub-expression matches in a few steps.

<<less
Download (0.33MB)
Added: 2006-11-27 License: GPL (GNU General Public License) Price:
624 downloads
Regexp::Log 0.04

Regexp::Log 0.04


Regexp::Log is a Perl base class for log files regexp builders. more>>
Regexp::Log is a Perl base class for log files regexp builders.

SYNOPSIS

my $foo = Regexp::Log::Foo->new(
format => custom %a %b %c/%d,
capture => [qw( host code )],
);

# the format() and capture() methods can be used to set or get
$foo->format(custom %g %e %a %w/%s %c);
$foo->capture(qw( host code ));

# this is necessary to know in which order
# we will receive the captured fields from the regexp
my @fields = $foo->capture;

# the all-powerful capturing regexp :-)
my $re = $foo->regexp;

while () {
my %data;
@data{@fields} = /$re/; # no need for /o, its a compiled regexp

# now munge the fields
...
}

<<less
Download (0.008MB)
Added: 2007-08-02 License: Perl Artistic License Price:
813 downloads
Regexp::Assemble 0.28

Regexp::Assemble 0.28


Regexp::Assemble is Perl module to assemble multiple Regular Expressions into a single RE. more>>
Regexp::Assemble is Perl module to assemble multiple Regular Expressions into a single RE.

SYNOPSIS

use Regexp::Assemble;

my $ra = Regexp::Assemble->new;
$ra->add( ab+c );
$ra->add( ab+- );
$ra->add( awd+ );
$ra->add( ad+ );
print $ra->re; # prints a(?:w?d+|b+[-c])

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 perls 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 Perls 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 its running on a a tried perl. (At least in some version after this one).

<<less
Download (0.080MB)
Added: 2007-04-03 License: Perl Artistic License Price:
935 downloads
XML::DOM::EntityReference 1.44

XML::DOM::EntityReference 1.44


XML::DOM::EntityReference is an XML ENTITY reference in XML::DOM. more>>
XML::DOM::EntityReference is an XML ENTITY reference in XML::DOM.

XML::DOM::EntityReference extends XML::DOM::Node.

EntityReference objects may be inserted into the structure model when an entity reference is in the source document, or when the user wishes to insert an entity reference. Note that character references and references to predefined entities are considered to be expanded by the HTML or XML processor so that characters are represented by their Unicode equivalent rather than by an entity reference.

Moreover, the XML processor may completely expand references to entities while building the structure model, instead of providing EntityReference objects. If it does provide such objects, then for a given EntityReference node, it may be that there is no Entity node representing the referenced entity; but if such an Entity exists, then the child list of the EntityReference node is the same as that of the Entity node. As with the Entity node, all descendants of the EntityReference are readonly.

The resolution of the children of the EntityReference (the replacement value of the referenced Entity) may be lazily evaluated; actions by the user (such as calling the childNodes method on the EntityReference node) are assumed to trigger the evaluation.

<<less
Download (0.039MB)
Added: 2006-10-13 License: Perl Artistic License Price:
1106 downloads
Visual REGEXP 3.1

Visual REGEXP 3.1


Visual REGEXP lets you easily design and debug regular expressions. more>>
Visual REGEXP project can easily design and debug regular expressions by providing a graphical visualization of the expression and its matches on a sample of your choice.
Version restrictions:
- some regexp can consume a lot of CPU time. This seems to be caused by the use of -all, -inline and -indices flags together.
- when a subexpression is not matched (empty match), the last character of the previous match are coloured. This is due to a problem in Tcl (bug submitted to Scriptics).
Enhancements:
- new version done by Martin Lemburg. Many thanks, Martin.
- it is now a tcl 8.5a4 starpack
- GUI layout changed to be based on a paned window
- GUI code looks different, to be more ergonomic
- the informational labels (replacements & matches) are now sunken
- there are now additional the "first" and "last" navigation buttons
- there is a new option to navigate through matches or matches and submatches
- the displayed count of matches is changed to display the current and the count of matches used for navigation (probably changes, if the new navigation option is changed)
- the replace widget is disabled on startup
- the tcl console is added to the help menu
- the key bindings inside the regexp text widget changed a bit to allow for expanded regexp (-expanded or (?x)) to contain tabs and newlines. Tabs are created with Control-Tab and newlines with Control-Return. Additional with Control-C|V|X (not c|v|x) it is possible to use the clipboard like with Control|Shift-Insert, Shift-Delete.
<<less
Download (0.025MB)
Added: 2006-03-08 License: GPL (GNU General Public License) Price:
1329 downloads
Regexp::Common::net 2.120

Regexp::Common::net 2.120


Regexp::Common::net is a Perl module that provide regexes for IPv4 addresses. more>>
Regexp::Common::net is a Perl module that provide regexes for IPv4 addresses.

SYNOPSIS

use Regexp::Common qw /net/;

while () {
/$RE{net}{IPv4}/ and print "Dotted decimal IP address";
/$RE{net}{IPv4}{hex}/ and print "Dotted hexadecimal IP address";
/$RE{net}{IPv4}{oct}{-sep => :}/ and
print "Colon separated octal IP address";
/$RE{net}{IPv4}{bin}/ and print "Dotted binary IP address";
/$RE{net}{MAC}/ and print "MAC address";
/$RE{net}{MAC}{oct}{-sep => " "}/ and
print "Space separated octal MAC address";
}

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.

This modules gives you regular expressions for various style IPv4 and MAC (or ethernet) addresses.

$RE{net}{IPv4}

Returns a pattern that matches a valid IP address in "dotted decimal". Note that while 318.99.183.11 is not a valid IP address, it does match /$RE{net}{IPv4}/, but this is because 318.99.183.11 contains a valid IP address, namely 18.99.183.11. To prevent the unwanted matching, one needs to anchor the regexp: /^$RE{net}{IPv4}$/.
For this pattern and the next four, under -keep (See Regexp::Common):

$1

captures the entire match

$2

captures the first component of the address

$3

captures the second component of the address

$4

captures the third component of the address

$5

captures the final component of the address

<<less
Download (0.11MB)
Added: 2006-06-27 License: Perl Artistic License Price:
1214 downloads
Regexp::Common::time 0.01

Regexp::Common::time 0.01


Regexp::Common::time Perl module contains date and time regexps. more>>
Regexp::Common::time Perl module contains date and time regexps.

SYNOPSIS

use Regexp::Common qw(time);

# Piecemeal, Time::Format-like patterns
$RE{time}{tf}{-pat => pattern}

# Piecemeal, strftime-like patterns
$RE{time}{strftime}{-pat => pattern}

# Match ISO8601-style date/time strings
$RE{time}{iso}

# Fuzzy date patterns
# YEAR/MONTH/DAY
$RE{time}{ymd} # Most flexible
$RE{time}{YMD} # Strictest (equivalent to y4m2d2)
# Other available patterns: y2md, y4md, y2m2d2, y4m2d2

# MONTH/DAY/YEAR (American style)
$RE{time}{mdy} # Most flexible
$RE{time}{MDY} # Strictest (equivalent to m2d2y4)
# Other available patterns: mdy2, mdy4, m2d2y2, m2d2y4

# DAY/MONTH/YEAR (European style)
$RE{time}{mdy} # Most flexible
$RE{time}{MDY} # Strictest (equivalent to d2m2y4)
# Other available patterns: dmy2, dmy4, d2m2y2, d2m2y4

# Fuzzy time pattern
# HOUR/MINUTE/SECOND
$RE{time}{hms} # H: matches 1 or 2 digits; 12 or 24 hours
# M: matches 2 digits.
# S: matches 2 digits; may be omitted
# May be followed by "a", "am", "p.m.", etc.

This module creates regular expressions that can be used for parsing dates and times. See Regexp::Common for a general description of how to use this interface.

Parsing dates is a dirty business. Dates are generally specified in one of three possible orders: year/month/day, month/day/year, and day/month/year. Years can be specified with four digits or with two digits (with assumptions made about the century). Months can be specified as one digit, two digits, as a spelled-out name, or as a three-letter abbreviation. Day numbers can be one digit or two digits, with limits depending on the month (and, in the case of February, even the year). Also, different people use different punctuation for separating the various elements.
A human can easily recognize that "October 21, 2005" and "21.10.05" refer to the same date, but its tricky to get a program to come to the same conclusion. This module attempts to make it possible to do so, with a minimum of difficulty.

If you know the exact format of the data to be matched, use one of the specific, piecemeal pattern builders: tf or strftime. If there is some variability, use one of the fuzzy-matching patterns in the dmy, mdy, or ymd families. If the data are wildly variable, such as raw user input, give up and use the Date::Manip or Date::Parse module.

Time values are generally much simpler to parse than date values. Only one fuzzy pattern is provided, and it should suffice for most needs.

<<less
Download (0.035MB)
Added: 2007-08-07 License: Perl Artistic License Price:
808 downloads
Sub::Regex 0.02

Sub::Regex 0.02


Sub::Regex is a Perl module to create synonymous subroutines. more>>
Sub::Regex is a Perl module to create synonymous subroutines.

SYNOPSIS

use Sub::Regex;
sub /look(s|ing)?_for/ ($){
foobar blah blah
}

look_for(Amanda);
looks_for(Amanda);
looking_for(Amanda);
lOoKiNg_fOr(Amanda);

Sub::Regex is a small tool for users to create a subroutine with multiple names. The only thing to be done is replace the normal name of a subroutine with a regular expression. However, regexp modifiers are not allowed, and matching is all considered case-insensitive.

<<less
Download (0.002MB)
Added: 2007-05-03 License: Perl Artistic License Price:
905 downloads
Regexp::Log::BlueCoat 0.03

Regexp::Log::BlueCoat 0.03


Regexp::Log::BlueCoat is a regexp builder to parse BlueCoat log files. more>>
Regexp::Log::BlueCoat is a regexp builder to parse BlueCoat log files.

SYNOPSIS

my $blue = Regexp::Log::BlueCoat->new(
format => %g %e %a %w/%s %b %m %i %u %H/%d %c,
capture => [qw( host code )],
);

# the format() and capture() methods can be used to set or get
$blue->format(%g %e %a %w/%s %b %m %i %u %H/%d %c %f %A);
$blue->capture(qw( host code ));
$blue->ufs( smartfilter );

# this is necessary to know in which order
# we will receive the captured fields from the regex
my @fields = $blue->capture;

# the all-powerful capturing regex :-)
my $re = $blue->regex;

while () {
my %data;
@data{@fields} = /$re/;

# do something with the fields
}

Regexp::Log::BlueCoat is a module that computes custom regular expressions to parse log files generated by the BlueCoat Sytems Port 80 Security Appliance.
See the Regexp::Log documentation for a description of the standard Regexp::Log interface.

<<less
Download (0.012MB)
Added: 2006-11-11 License: Perl Artistic License Price:
1083 downloads
Secleted [ 0 ] software to compare
  • Page: 1 of 5
  • 1
  • 2
  • 3
  • 4
  • 5