php-doc-en/reference/pcre/reference.xml
2002-07-28 14:33:12 +00:00

125 lines
3.7 KiB
XML

<?xml version="1.0" encoding="iso-8859-1"?>
<!-- $Revision: 1.4 $ -->
<reference id="ref.pcre">
<title>Regular Expression Functions (Perl-Compatible)</title>
<titleabbrev>PCRE</titleabbrev>
<partintro>
<section id="pcre.intro">
&reftitle.intro;
<para>
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 &lt;&gt; matching delimiters.
</para>
<para>
The ending delimiter may be followed by various modifiers that
affect the matching.
See <link linkend="pcre.pattern.modifiers">Pattern Modifiers</link>.
</para>
<para>
PHP also supports regular expressions using a POSIX-extended syntax
using the <link linkend="ref.regex">POSIX-extended regex functions.</link>.
</para>
</section>
<section id="pcre.requirements">
&reftitle.required;
<para>
Regular expression support is provided by the PCRE library
package, which is open source software, written by Philip Hazel,
and copyright by the University of Cambridge, England. It is
available at <ulink url="&url.pcre;">&url.pcre;</ulink>.
</para>
</section>
<section id="pcre.installation">
&reftitle.install;
<para>
Beginning with PHP 4.2.0 this function are enabled by default.
For older versions you have to configure and compile PHP
with <option role="configure">--with-pcre-regex[=DIR]</option> in order
to use these functions. You can disable the pcre functions with <option
role="configure">--without-pcre-regex</option>.
</para>
</section>
<section id="pcre.configuration">
&reftitle.runtime;
&no.config;
</section>
<section id="pcre.resources">
&reftitle.resources;
&no.resource;
</section>
&reference.pcre.constants;
<section id="pcre.examples">
&reftitle.examples;
<para>
<example>
<title>Examples of valid patterns</title>
<itemizedlist>
<listitem><simpara><literal>/&lt;\/\w+&gt;/</literal></simpara></listitem>
<listitem><simpara><literal>|(\d{3})-\d+|Sm</literal></simpara></listitem>
<listitem><simpara><literal>/^(?i)php[34]/</literal></simpara></listitem>
<listitem><simpara><literal>{^\s+(\s+)?$}</literal></simpara></listitem>
</itemizedlist>
</example>
</para>
<para>
<example>
<title>Examples of invalid patterns</title>
<itemizedlist>
<listitem>
<simpara>
<literal>/href='(.*)'</literal> - missing ending delimiter
</simpara>
</listitem>
<listitem>
<simpara>
<literal>/\w+\s*\w+/J</literal> - unknown modifier 'J'
</simpara>
</listitem>
<listitem>
<simpara>
<literal>1-\d3-\d3-\d4|</literal> - missing starting delimiter
</simpara>
</listitem>
</itemizedlist>
</example>
</para>
</section>
</partintro>
&reference.pcre.functions;
</reference>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"../../../manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->