PHPCon Poland 2024

mb_eregi

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

mb_eregiCorrespondência de expressão regular sem diferenciar maiúsculas e minúsculas com suporte multibyte

Descrição

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

Executa a correspondência de expressão regular sem diferenciar maiúsculas e minúsculas com suporte multibyte.

Parâmetros

pattern

O padrão de expressão regular.

string

A string sendo pesquisada.

matches

Se correspondências forem encontradas para substrings entre parênteses de pattern e a função for chamada com o terceiro argumento matches, as correspondências serão armazenadas nos elementos do array matches. Se nenhuma correspondência for encontrada, matches será configurado como um array vazio.

$matches[1] conterá a substring que começa em o primeiro parêntese à esquerda; $matches[2] conterá a substring que começa no segundo, e assim por diante. $matches[0] conterá uma cópia da string completa correspondida.

Valor Retornado

Retorna se pattern corresponde a string.

Registro de Alterações

Versão Descrição
8.0.0 Esta função agora retorna true em caso de sucesso. Anteriormente, ela retornava o comprimento em bytes da string correspondida se uma correspondência para pattern fosse encontrada em string e matches fosse passado. Se o parâmetro opcional matches não fosse passado ou o comprimento da string correspondida fosse 0, esta função retornava 1.
7.1.0 mb_eregi() agora define matches como um array vazio, se nada coincidir. Anteriormente, matches não era modificado nesse caso.

Notas

Nota:

A codificação interna ou a codificação de caracteres especificada por mb_regex_encoding() será usada como a codificação de caracteres para esta função.

Veja Também

  • mb_regex_encoding() - Define/Obtém codificação de caracteres para regex multibyte
  • mb_ereg() - Correspondência de expressão regular com suporte multibyte

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
21 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