This function does not work - it is not case insensitive for non latin characters.
mb_eregi
(PHP 4 >= 4.2.0, PHP 5)
mb_eregi — Regular expression match ignoring case with multibyte support
说明
int mb_eregi
( string
$pattern
, string $string
[, array $regs
] )Executes the case insensitive regular expression match with multibyte support.
参数
返回值
Executes the regular expression
match with multibyte support, and returns 1 if matches are found.
If the optional regs parameter was specified, the function
returns the byte length of matched part, and the array
regs will contain the substring of matched
string. The function returns 1 if it matches with the empty
string. If no matches are found or an error happens, FALSE will be
returned.
注释
Note:
mb_regex_encoding() 指定的内部编码或字符编码将会当作此函数用的字符编码。
参见
- mb_regex_encoding() - Set/Get character encoding for multibyte regex
- mb_ereg() - Regular expression match with multibyte support
bubalula at gmail dot com ¶
2 years ago
lasmit at what dot com ¶
1 year ago
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
?>
steve at brainwashstudios dot com ¶
10 years ago
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.
