<?php
function mb_sql_regcase($string,$encoding='auto'){
$max=mb_strlen($item,$encoding);
for ($i = 0; $i < $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;
}
?>
sql_regcase
(PHP 4, PHP 5)
sql_regcase — 大文字小文字を区別しないマッチングのための正規表現を作成する
説明
string sql_regcase
( string $string
)
大文字小文字を区別しないマッチングのための正規表現を作成します。
パラメータ
- string
-
入力文字列。
返り値
大文字小文字を区別せず string にマッチする、 有効な正規表現式を返します。この表現式は、string の中の個々のアルファベットを '[]' 表現に変換したものです。 この '[]' 表現は、大文字と小文字がそれぞれ含まれます。 アルファベット以外の文字の場合は、元々の文字がそのまま残ります。
例
例1 sql_regcase() の例
<?php
echo sql_regcase("Foo - bar.");
?>
上の例の出力は以下となります。
[Ff][Oo][Oo] - [Bb][Aa][Rr].
この関数は、大文字小文字を区別する正規表現しかサポートしない製品において、 大文字小文字を区別しないパターンマッチングを行いたい場合に役立ちます。
sql_regcase
irker SOBACHKA irker DOT net
28-Sep-2008 11:14
28-Sep-2008 11:14
edge at gts dot smtn dot stavropol dot ru
25-Jun-2003 03:56
25-Jun-2003 03:56
if you set right locale:
setlocale(LC_CTYPE,"ru_RU.KOI8-R");
print sql_regcase("Цffnung");
will output:
"[Цц][Ff][Ff][Nn][Uu][Nn][Gg]"
