(PHP 4 >= 4.2.0, PHP 5, PHP 7)

mb_eregRegular expression match with multibyte support


mb_ereg ( string $pattern , string $string [, array &$matches = null ] ) : bool

Executes the regular expression match with multibyte support.



The search pattern.


The search string.


If matches are found for parenthesized substrings of pattern and the function is called with the third argument matches, the matches will be stored in the elements of the array matches. If no matches are found, matches is set to an empty array.

$matches[1] will contain the substring which starts at the first left parenthesis; $matches[2] will contain the substring starting at the second, and so on. $matches[0] will contain a copy of the complete string matched.

Return Values

Returns whether pattern matches string.


Version Description
8.0.0 This function returns true on success now. Previously, it returned the byte length of the matched string if a match for pattern was found in string and matches was passed. If the optional parameter matches was not passed or the length of the matched string was 0, this function returned 1.
7.1.0 mb_ereg() will now set matches to an empty array, if nothing matched. Formerly, matches was not modified in that case.



The internal encoding or the character encoding specified by mb_regex_encoding() will be used as the character encoding for this function.

See Also

  • mb_regex_encoding() - Set/Get character encoding for multibyte regex
  • mb_eregi() - Regular expression match ignoring case with multibyte support

© 1997–2020 The PHP Documentation Group
Licensed under the Creative Commons Attribution License v3.0 or later.