PHP 5.6.0beta1 released

sql_regcase

(PHP 4, PHP 5)

sql_regcaseMake regular expression for case insensitive match

Descrierea

string sql_regcase ( string $string )

Creates a regular expression for a case insensitive match.

Avertizare

Această funcție a fost DEZAPROBATĂ începând cu PHP 5.3.0. Utilizarea acestei facilități este foarte nerecomandată.

Parametri

string

The input string.

Valorile întoarse

Returns a valid regular expression which will match string, ignoring case. This expression is string with each alphabetic character converted to a bracket expression; this bracket expression contains that character's uppercase and lowercase form. Other characters remain unchanged.

Exemple

Example #1 sql_regcase() example

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

Exemplul de mai sus va afișa:

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

This can be used to achieve case insensitive pattern matching in products which support only case sensitive regular expressions.

Note

Notă:

Începând cu PHP 5.3.0 extensia regex este defavorizată în favoarea extensiei PCRE. Apelarea acestei funcții va emite o notificare E_DEPRECATED. Accesați lista diferențelor pentru ajutor la convertirea în sintaxa PCRE.

add a note add a note

User Contributed Notes 3 notes

up
0
phpcomment at revmaps dot no-ip dot biz
2 months ago
This function naivley replaces the letters in your expression.
if your expression uses [] already using this will probably break it
up
1
edge at gts dot smtn dot stavropol dot ru
10 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
-27
irker at irker dot net
5 years ago
&lt;?php
function mb_sql_regcase($string,$encoding=\\\'auto\\\'){
  $max=mb_strlen($item,$encoding);
  for ($i = 0; $i &lt; $max; $i++) {
    $char=mb_substr($item,$i,1,$encoding);
    $up=mb_strtoupper ($char,$encoding);
    $low=mb_strtolower($char,$encoding);
    $ret.=($up!=$low)?\\\'[\\\'.$up.$low.\\\']\\\' : $char;
  }
  return $ret;
}
?&gt;
To Top