diff --git a/reference/pcre/book.xml b/reference/pcre/book.xml new file mode 100644 index 0000000000..99b4d8bdaf --- /dev/null +++ b/reference/pcre/book.xml @@ -0,0 +1,75 @@ + + + + + + + Regular Expression Functions (Perl-Compatible) + PCRE + + + &reftitle.intro; + + The syntax for patterns used in these functions closely resembles + Perl. The expression should be enclosed in the delimiters, a + forward slash (/), for example. Any character can be used for + delimiter as long as it's not alphanumeric or backslash (\). If + the delimiter character has to be used in the expression itself, + it needs to be escaped by backslash. Since PHP 4.0.4, you can also use + Perl-style (), {}, [], and <> matching delimiters. + See Pattern Syntax + for detailed explanation. + + + The ending delimiter may be followed by various modifiers that + affect the matching. + See Pattern + Modifiers. + + + PHP also supports regular expressions using a POSIX-extended syntax + using the POSIX-extended regex functions. + + + + This extension maintains a global per-thread cache of compiled regular + expressions (up to 4096). + + + + + You should be aware of some limitations of PCRE. Read &url.pcre.man; for more info. + + + + + &reference.pcre.setup; + &reference.pcre.constants; + &reference.pcre.examples; + &reference.pcre.pattern; + &reference.pcre.reference; + + + + + diff --git a/reference/pcre/constants.xml b/reference/pcre/constants.xml index a3551965f7..28b1632d37 100644 --- a/reference/pcre/constants.xml +++ b/reference/pcre/constants.xml @@ -1,6 +1,6 @@ - -
+ + &reftitle.constants; &extension.constants; @@ -113,7 +113,7 @@
-
+ + + &reftitle.examples; + + + Examples of valid patterns + + /<\/\w+>/ + |(\d{3})-\d+|Sm + /^(?i)php[34]/ + {^\s+(\s+)?$} + + + + + + Examples of invalid patterns + + + + /href='(.*)' - missing ending delimiter + + + + + /\w+\s*\w+/J - unknown modifier 'J' + + + + + 1-\d3-\d3-\d4| - missing starting delimiter + + + + + + + + + diff --git a/reference/pcre/pattern.xml b/reference/pcre/pattern.xml new file mode 100644 index 0000000000..4243b65d03 --- /dev/null +++ b/reference/pcre/pattern.xml @@ -0,0 +1,32 @@ + + + + + PCRE Patterns + + &reference.pcre.pattern.modifiers; + &reference.pcre.pattern.syntax; + + + + + diff --git a/reference/pcre/reference.xml b/reference/pcre/reference.xml index a8c7cabbd3..1f52bc5fd7 100644 --- a/reference/pcre/reference.xml +++ b/reference/pcre/reference.xml @@ -1,106 +1,10 @@ - - - + - Regular Expression Functions (Perl-Compatible) - PCRE + PCRE &Functions; - -
- &reftitle.intro; - - The syntax for patterns used in these functions closely resembles - Perl. The expression should be enclosed in the delimiters, a - forward slash (/), for example. Any character can be used for - delimiter as long as it's not alphanumeric or backslash (\). If - the delimiter character has to be used in the expression itself, - it needs to be escaped by backslash. Since PHP 4.0.4, you can also use - Perl-style (), {}, [], and <> matching delimiters. - See Pattern Syntax - for detailed explanation. - - - The ending delimiter may be followed by various modifiers that - affect the matching. - See Pattern - Modifiers. - - - PHP also supports regular expressions using a POSIX-extended syntax - using the POSIX-extended regex functions. - - - - This extension maintains a global per-thread cache of compiled regular - expressions (up to 4096). - - - - - You should be aware of some limitations of PCRE. Read &url.pcre.man; for more info. - - -
- -
- &reftitle.required; - &no.requirement; -
- - &reference.pcre.configure; - &reference.pcre.ini; - -
- &reftitle.resources; - &no.resource; -
- - &reference.pcre.constants; - -
- &reftitle.examples; - - - Examples of valid patterns - - /<\/\w+>/ - |(\d{3})-\d+|Sm - /^(?i)php[34]/ - {^\s+(\s+)?$} - - - - - - Examples of invalid patterns - - - - /href='(.*)' - missing ending delimiter - - - - - /\w+\s*\w+/J - unknown modifier 'J' - - - - - 1-\d3-\d3-\d4| - missing starting delimiter - - - - - -
-
- -&reference.pcre.pattern.modifiers; -&reference.pcre.pattern.syntax; -&reference.pcre.entities.functions; + &reference.pcre.entities.functions;
diff --git a/reference/pcre/setup.xml b/reference/pcre/setup.xml new file mode 100644 index 0000000000..5ff365c55a --- /dev/null +++ b/reference/pcre/setup.xml @@ -0,0 +1,42 @@ + + + + &reftitle.setup; + +
+ &reftitle.required; + &no.requirement; +
+ + &reference.pcre.configure; + + &reference.pcre.ini; + +
+ &reftitle.resources; + &no.resource; +
+ +
+ + +