downloads | documentation | faq | getting help | mailing lists | reporting bugs | php.net sites | links | my php.net 
search for in the  

<POSIX Regex Functionsereg>
Last updated: Thu, 26 Jun 2008

ereg_replace

(PHP 4, PHP 5)

ereg_replace — Replace regular expression

Description

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

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

Parameters

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.

Return Values

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

Examples

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

Example #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:

Example #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.' */
?>

Example #3 Replace URLs with links

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

Notes

Tip

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



add a noteadd a note User Contributed Notes
Replace regular expression
There are no user contributed notes for this page.




<POSIX Regex Functionsereg>
Last updated: Thu, 26 Jun 2008
show source | credits | sitemap | contact | advertising | mirror sites
Copyright © 2001-2005 The PHP Group
All rights reserved.
This unofficial mirror is operated at: http://phpbuilder.com/
Last updated: Tue Nov 1 20:20:59 2005 EST
Columns / Articles | Tips / Quickies | News | News Linking and RSS Feeds | Shared Code Library
Mail Archives | Support / Discussion Forums | Get Started! Links | Contribute! | Docs