(PHP 4, PHP 5)
ereg — Regular expression match
$pattern
, string $string
[, array &$regs
] )
Searches a string
for matches to the regular
expression given in pattern
in a case-sensitive
way.
This function has been DEPRECATED as of PHP 5.3.0. Relying on this feature is highly discouraged.
pattern
Case sensitive regular expression.
string
The input string.
regs
If matches are found for parenthesized substrings of
pattern
and the function is called with the
third argument regs
, the matches will be stored
in the elements of the array regs
.
$regs[1] will contain the substring which starts at the first left parenthesis; $regs[2] will contain the substring starting at the second, and so on. $regs[0] will contain a copy of the complete string matched.
Returns the length of the matched string if a match for
pattern
was found in string
,
or FALSE
if no matches were found or an error occurred.
If the optional parameter regs
was not passed or
the length of the matched string is 0, this function returns 1.
Version | Description |
---|---|
4.1.0 | Up to (and including) PHP 4.1.0 $regs will be filled with exactly ten elements, even though more or fewer than ten parenthesized substrings may actually have matched. This has no effect on ereg()'s ability to match more substrings. If no matches are found, $regs will not be altered by ereg(). |
Example #1 ereg() example
The following code snippet takes a date in ISO format (YYYY-MM-DD) and prints it in DD.MM.YYYY format:
<?php
if (ereg ("([0-9]{4})-([0-9]{1,2})-([0-9]{1,2})", $date, $regs)) {
echo "$regs[3].$regs[2].$regs[1]";
} else {
echo "Invalid date format: $date";
}
?>
Note:
As of PHP 5.3.0, the regex extension is deprecated in favor of the PCRE extension. Calling this function will issue an
E_DEPRECATED
notice. See the list of differences for help on converting to PCRE.
Note:
preg_match(), which uses a Perl-compatible regular expression syntax, is often a faster alternative to ereg().