php-doc-en/reference/regex/reference.xml
Derick Rethans 872cf12847 - Cleanup
git-svn-id: https://svn.php.net/repository/phpdoc/en/trunk@132680 c90b9560-bf6c-de11-be94-00142212c4b1
2003-06-20 21:31:15 +00:00

153 lines
4.3 KiB
XML

<?xml version="1.0" encoding="iso-8859-1"?>
<!-- $Revision: 1.8 $ -->
<reference id="ref.regex">
<title>Regular Expression Functions (POSIX Extended)</title>
<titleabbrev>Regexps</titleabbrev>
<partintro>
<section id="regex.intro">
&reftitle.intro;
<tip>
<para>
PHP also supports regular expressions using a Perl-compatible syntax
using the <link linkend="ref.pcre">PCRE functions</link>. Those functions
support non-greedy matching, assertions, conditional subpatterns, and a
number of other features not supported by the POSIX-extended regular
expression syntax.
</para>
</tip>
<warning>
<para>
These regular expression functions are not binary-safe. The <link
linkend="ref.pcre">PCRE functions</link> are.
</para>
</warning>
<para>
Regular expressions are used for complex string manipulation in
PHP. The functions that support regular expressions are:
<itemizedlist>
<listitem>
<simpara><function>ereg</function></simpara>
</listitem>
<listitem>
<simpara><function>ereg_replace</function></simpara>
</listitem>
<listitem>
<simpara><function>eregi</function></simpara>
</listitem>
<listitem>
<simpara><function>eregi_replace</function></simpara>
</listitem>
<listitem>
<simpara><function>split</function></simpara>
</listitem>
<listitem>
<simpara><function>spliti</function></simpara>
</listitem>
</itemizedlist>
</para>
<para>
These functions all take a regular expression string as their
first argument. PHP uses the POSIX extended regular expressions
as defined by POSIX 1003.2. For a full description of POSIX
regular expressions see the regex man pages included in the regex
directory in the PHP distribution. It's in manpage format, so
you'll want to do something along the lines of <command>man
/usr/local/src/regex/regex.7</command> in order to read it.
</para>
</section>
<section id="regex.requirements">
&reftitle.required;
&no.requirement;
</section>
&reference.regex.configure;
<section id="regex.configuration">
&reftitle.runtime;
&no.config;
</section>
<section id="regex.resources">
&reftitle.resources;
&no.resource;
</section>
<section id="regex.constants">
&reftitle.constants;
&no.constants;
</section>
<section id="regex.examples">
&reftitle.examples;
<para>
<example>
<title>Regular Expression Examples</title>
<programlisting role="php">
<![CDATA[
<?php
// Returns true if "abc" is found anywhere in $string.
ereg ("abc", $string);
// Returns true if "abc" is found at the beginning of $string.
ereg ("^abc", $string);
// Returns true if "abc" is found at the end of $string.
ereg ("abc$", $string);
// Returns true if client browser is Netscape 2, 3 or MSIE 3.
eregi ("(ozilla.[23]|MSIE.3)", $HTTP_USER_AGENT);
// Places three space separated words into $regs[1], $regs[2] and $regs[3].
ereg ("([[:alnum:]]+) ([[:alnum:]]+) ([[:alnum:]]+)", $string,$regs);
// Put a <br /> tag at the beginning of $string.
$string = ereg_replace ("^", "<br />", $string);
// Put a <br /> tag at the end of $string.
$string = ereg_replace ("$", "<br />", $string);
// Get rid of any newline characters in $string.
$string = ereg_replace ("\n", "", $string);
?>
]]>
</programlisting>
</example>
</para>
</section>
<section id="regex.seealso">
&reftitle.seealso;
<para>
For regular expressions in Perl-compatible syntax have a look at the
<link linkend="ref.pcre">PCRE functions</link>. The simpler shell style
wildcard pattern matching is provided by <function>fnmatch</function>.
</para>
</section>
</partintro>
&reference.regex.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
-->