The PHP Online Conference 2021

sql_regcase

(PHP 4, PHP 5)

sql_regcaseCria expressões regulares insensíveis a maiúsculas e minúsculas

Aviso

Esta função está OBSOLETA no PHP 5.3.0 e foi REMOVIDA no PHP 7.0.0.

Alternativas a esta função incluem:

Descrição

sql_regcase ( string $string ) : string

Cria uma expressão regular para uma combinação case insensitive.

Parâmetros

string

A string de entrada.

Valor Retornado

Retorna uma expressão regular válida para casar com string ignorando a diferença entre maiúsculas e minúsculas. A expressão será string com os caracteres convertidos a uma expressão de colchetes; essa expressão terá os caracteres aplicáveis descritos em maiúsculas e minúsculas. Outros caracteres não serão modificados.

Exemplos

Exemplo #1 Exemplo da sql_regcase()

<?php
echo sql_regcase("Foo - bar.");
?>

O exemplo acima irá imprimir:

[Ff][Oo][Oo] - [Bb][Aa][Rr].

Você pode utilizar esse recurso quando quando existir somente suporte a expressões regulares sensíveis a maiúsculas e minúsculas

add a note add a note

User Contributed Notes 3 notes

up
0
fernandovaller at gmail dot com
5 months ago
function php7_regcase($str)
{

    if (empty($str))
        return '';

    $chars = str_split($str);

    foreach ($chars as $char) {
        if (preg_match("/[A-Za-z]/", $char)) {
            $str_upper = mb_strtoupper($char, 'UTF-8');
            $str_lower = mb_strtolower($char, 'UTF-8');
            $resp[] = "[{$str_upper}{$str_lower}]";
        } else {
            $resp[] = $char;
        }
    }

    return implode('', $resp);
}
up
0
edge at gts dot smtn dot stavropol dot ru
17 years ago
if you set right locale:

setlocale(LC_CTYPE,"ru_RU.KOI8-R");

print sql_regcase("Цffnung");

will output:
"[Цц][Ff][Ff][Nn][Uu][Nn][Gg]"
up
-2
phpcomment at revmaps dot no-ip dot biz
6 years ago
This function naivley replaces the letters in your expression.
if your expression uses [] already using this will probably break it
To Top