mb_eregi

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

mb_eregiRegular expression match ignoring case with multibyte support

说明

mb_eregi ( string $pattern , string $string [, array &$regs ] ) : int

Executes the case insensitive regular expression match with multibyte support.

参数

pattern

The regular expression pattern.

string

The string being searched.

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. If no matches are found, regs is set to an empty array.

$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 byte 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.

更新日志

版本 说明
7.1.0 mb_eregi() will now set regs to an empty array, if nothing matched. Formerly, regs was not modified in that case.

注释

Note:

mb_regex_encoding() 指定的内部编码或字符编码将会当作此函数用的字符编码。

参见

User Contributed Notes

lasmit at what dot com 20-Feb-2012 10:31
I simulated it:
<?php
   $text
= '?pfel';
  
mb_internal_encoding( 'utf-8' );
  
printf( "%d\n", mb_eregi( '?pfel', $text ) ); // Output: 0
  
printf( "%d\n", mb_ereg( '?pfel', mb_strtolower( $text ) ) ); // Output: 1
  
printf( "%d\n", mb_eregi( '?pfel', mb_strtolower( $text ) ) ); // Output: 1
?>
bubalula at gmail dot com 27-Aug-2010 07:44
This function does not work - it is not case insensitive for non latin characters.
steve at brainwashstudios dot com 10-Apr-2003 07:52
When this function is perfected, and is not experimental, it may be very usefull in the searching and pinpointing of places inside large text files.