CakeFest 2024: The Official CakePHP Conference

mb_eregi

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

mb_eregi Находит соответствие регулярному выражению с поддержкой многобайтовых символов без учёта регистра

Описание

mb_eregi(string $pattern, string $string, array &$matches = null): bool

Выполняет нечувствительный к регистру поиск соответствий регулярному выражению с поддержкой многобайтных символов.

Список параметров

pattern

Шаблон поиска.

string

Строка (string) поиска.

matches

Если найдены совпадения для подстроки pattern, заключённой в скобки, и функция вызвана с заданным третьим параметром matches, совпадения будут сохранены в массиве matches. Если совпадений не найдено, параметр matches станет пустым массивом.

Элемент $matches[1] будет содержать первую (слева) подстроку, заключённую в скобки; элемент $regs[2] — вторую и так далее. Элемент $matches[0] будет содержать копию всей найденной строки.

Возвращаемые значения

Возвращает true, если шаблон pattern соответствует строке string, иначе false.

Список изменений

Версия Описание
8.0.0 Теперь эта функция возвращает true в случае успешного выполнения. Раньше, если был задан параметр matches и в строке string было найдено вхождение шаблона pattern, возвращалась длинна найденной подстроки в байтах. Если параметр matches не задавался или длина найденной подстроки равнялась 0, функция возвращала 1.
7.1.0 Функция mb_eregi() устанавливает значение параметра matches равным пустому массиву, если ничего не найдено. Ранее при отсутствии совпадений параметр matches не изменялся.

Примечания

Замечание:

Для этой функции будет использована внутренняя кодировка или кодировка, установленная функцией mb_regex_encoding().

Смотрите также

  • mb_regex_encoding() - Устанавливает или получает кодировку символов для многобайтового регулярного выражения
  • mb_ereg() - Находит совпадение регулярному выражению с поддержкой многобайтовых кодировок

add a note

User Contributed Notes 3 notes

up
5
bubalula at gmail dot com
13 years ago
This function does not work - it is not case insensitive for non latin characters.
up
0
steve at brainwashstudios dot com
20 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.
up
-9
lasmit at what dot com
12 years 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
?>
To Top