POSIX Regex Funkcje
PHP Manual

ereg_replace

(PHP 4, PHP 5)

ereg_replaceReplace regular expression

Opis

string ereg_replace ( string $pattern , string $replacement , string $string )

This function scans string for matches to pattern, then replaces the matched text with replacement.

Ostrzeżenie

Ta funkcja jest PRZESTARZAŁA od PHP 5.3.0. Używanie tej funkcji nie jest zalecane.

Parametry

pattern

A POSIX extended regular expression.

replacement

If pattern contains parenthesized substrings, replacement may contain substrings of the form \digit, which will be replaced by the text matching the digit'th parenthesized substring; \0 will produce the entire contents of string. Up to nine substrings may be used. Parentheses may be nested, in which case they are counted by the opening parenthesis.

string

The input string.

Zwracane wartości

The modified string is returned. If no matches are found in string, then it will be returned unchanged.

Przykłady

For example, the following code snippet prints "This was a test" three times:

Przykład #1 ereg_replace() example

<?php

$string 
"This is a test";
echo 
str_replace(" is"" was"$string);
echo 
ereg_replace("( )is""\\1was"$string);
echo 
ereg_replace("(( )is)""\\2was"$string);

?>

One thing to take note of is that if you use an integer value as the replacement parameter, you may not get the results you expect. This is because ereg_replace() will interpret the number as the ordinal value of a character, and apply that. For instance:

Przykład #2 ereg_replace() example

<?php
/* This will not work as expected. */
$num 4;
$string "This string has four words.";
$string ereg_replace('four'$num$string);
echo 
$string;   /* Output: 'This string has   words.' */

/* This will work. */
$num '4';
$string "This string has four words.";
$string ereg_replace('four'$num$string);
echo 
$string;   /* Output: 'This string has 4 words.' */
?>

Przykład #3 Replace URLs with links

<?php
$text 
ereg_replace("[[:alpha:]]+://[^<>[:space:]]+[[:alnum:]/]",
                     
'<a href="\\0">\\0</a>'$text);
?>

Notatki

Informacja:

Od PHP 5.3.0 rozszerzenie regex jest przestarzałe. Zamiast niego należy używać rozszerzenia PCRE. Wywołanie tych funkcji spowoduje wygenerowanie ostrzeżenia E_DEPRECATED. Zobacz listę różnic aby uzyskać pomoc w migracji do PCRE.

Wskazówka

preg_replace(), which uses a Perl-compatible regular expression syntax, is often a faster alternative to ereg_replace().

Zobacz też:


POSIX Regex Funkcje
PHP Manual