Perl Compatible Regular Expressions

Perl Compatible Regular Expressions (PCRE) is a regular expression C library inspired by Perl's external interface, written by Philip Hazel. PCRE's syntax is much more powerful and flexible than either of the POSIX regular expression flavors and many classic regular expression libraries. The name is misleading, because PCRE and Perl each have capabilities not shared by the other.

The PCRE library is incorporated into a number of prominent open-source programs, such as the Apache HTTP Server and the PHP and R scripting languages; and can be incorporated in proprietary software too (BSD license). As of Perl 5.10, PCRE is also available as a replacement for Perl's default regular expression engine through the re::engine::PCRE module.

The library can be built using configure and make (typical of Unix-like environments), as well as in Unix, Windows and other environments using CMake. Numerous default settings are chosen at build time. In addition to the PCRE library, a POSIX C wrapper, a Google-contributed native C++ wrapper, several test programs, and the utility program pcregrep are also included in the distribution and are built in tandem with the library. The PCRE library provides matching only; the C++ wrapper, if used, adds multiple match and replacement functionality.

Unless the "NoRecurse" PCRE build option (aka "--disable-stack-for-recursion") is chosen, adequate stack space must be allocated to PCRE by the calling application or operating system. The amount of stack needed varies for each pattern. For example, to complete the tests provided with pcretest, 8 MB of stack space would be needed. While PCRE's documentation cautions that the "NoRecurse" build option makes PCRE slower than the alternative, using it avoids entirely the issue of stack overflows.

Read more about Perl Compatible Regular Expressions:  Features, Differences From Perl

Other articles related to "perl compatible regular expressions, perl, regular expression, compatible":

Perl Compatible Regular Expressions - Differences From Perl
... PCRE's specification has the following differences to Perl's regular expression (as of Perl 5.9.4) Recursive matches are atomic in PCRE and non atomic in Perl This means that ... in $1 containing 'a' and $2 containing undef in Perl, but in PCRE will result in $2 containing 'b' ... allows named capture buffers to be given numeric names Perl requires the name to follow the rule of barewords This means that g{} is unambiguous in Perl, but ...
List Of Game Engines - Free and Open Source
... library C Ada, C++, C#, D, Lisp, Lua, Mercury, Pascal, Perl, Python, Scheme Yes Yes 2D zlib Graphics and audio Ardor3D Java Yes No 3D zlib Fork of jMonkeyEngine 2.0 Axiom Engine C# Yes No ... Construct Classic Event Based No No 2D Minitroid GPL/ BSD Crystal Space C++ Java, Perl, Python Yes Yes 3D LGPL Graphics, audio, physics Cube C++ Yes ... API compatible with hge-unix ...

Famous quotes containing the words expressions, regular and/or compatible:

    Preschoolers think and talk in concrete, literal terms. When they hear a phrase such as “losing your temper,” they may wonder where the lost temper can be found. Other expressions they may hear in times of crisis—raising your voice, crying your eyes out, going to pieces, falling apart, picking on each other, you follow in your father’s footsteps—may be perplexing.
    Ruth Formanek (20th century)

    This is the frost coming out of the ground; this is Spring. It precedes the green and flowery spring, as mythology precedes regular poetry. I know of nothing more purgative of winter fumes and indigestions. It convinces me that Earth is still in her swaddling-clothes, and stretches forth baby fingers on every side.
    Henry David Thoreau (1817–1862)

    English general and singular terms, identity, quantification, and the whole bag of ontological tricks may be correlated with elements of the native language in any of various mutually incompatible ways, each compatible with all possible linguistic data, and none preferable to another save as favored by a rationalization of the native language that is simple and natural to us.
    Willard Van Orman Quine (b. 1908)