Forum und email

Regular Expression Functions (POSIX Extended)

Introduktion

Tip

PHP also supports regular expressions using a Perl-compatible syntax using the PCRE functions. Those functions support non-greedy matching, assertions, conditional subpatterns, and a number of other features not supported by the POSIX-extended regular expression syntax.

Warning

These regular expression functions are not binary-safe. The PCRE functions are.

Regular expressions are used for complex string manipulation. 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 man /usr/local/src/regex/regex.7 in order to read it.

Systemkrav

Ingen eksterne libraries er nødvendige for at kompilere denne udvidelse.

Installation

Warning

Do not change the TYPE unless you know what you are doing.

To enable regexp support configure PHP --with-regex[=TYPE]. TYPE can be one of system, apache, php. The default is to use php.

Windows versionen af PHP har indbygget support for denne udvidelse. Du behøver ikke indsætte ekstra udvidelser for at bruge disse funktioner.

Runtime Konfiguration

Denne udvidelse har intet konfigurations-direktiv defineret i php.ini.

Ressourcetyper

Denne udvidelse har ingen ressourcetyper defineret.

Foruddefinerede Konstanter

Denne udvidelse har ingen konstanter.

Eksempler

Example#1 Regular Expression Examples

<?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)"$_SERVER["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);
?>

Se også

For regular expressions in Perl-compatible syntax have a look at the PCRE functions. The simpler shell style wildcard pattern matching is provided by fnmatch().

Table of Contents

  • ereg_replace — Replace regular expression
  • ereg — Regular expression match
  • eregi_replace — Replace regular expression case insensitive
  • eregi — Case insensitive regular expression match
  • split — Split string into array by regular expression
  • spliti — Split string into array by regular expression case insensitive
  • sql_regcase — Make regular expression for case insensitive match