ホームページ  >  記事  >  バックエンド開発  >  POSIX 拡張正規表現関数

POSIX 拡張正規表現関数

巴扎黑
巴扎黑オリジナル
2017-04-25 13:59:262007ブラウズ

文字列の検索は正規表現の主な用途です。 PHP では、POSIX スタイルの正規表現の照合に使用できる 2 つの関数は、 ereg() 関数と eregi() 関数です。

ereg()関数とeregi()関数

関数の構文形式は次のとおりです:

int ereg(string pattern,string search,array[matches]);

関数: この関数は検索します文字列検索の場合は、パターン内の正規表現に一致する文字列を検索します。 pattern の部分式に一致する文字列が見つかった場合、これらの文字列は、各配列要素が 1 つの部分式に対応する状態で、matches 配列に格納されます。

関数 eregi() 関数は、大文字と小文字を区別しないことを除いて、ereg() 関数と同じ機能を持ちます。

変数が正当かどうかを検証するための ereg() 関数の使用例:

<?php
header("content-type:text/html;charset=utf-8");
$ereg = &#39;^[$][[:alpha:]__][[:alnum:]]*&#39;;
ereg($ereg,&#39;$_name&#39;,$register);
var_dump($register);
?>

注: ereg は PHP の新しいバージョンでは非推奨となり、preg_match().

ereg_replace() と置き換えられました。 eregi_replace()

関数の構文形式は次のとおりです:

string ereg_replace/ereg_replace(文字列パターン, 文字列置換, 文字列 string)

関数関数: 文字置換文字列内の表現パターンと一致する場合は一致します。成功した場合は、replacement を使用して一致文字列を置換し、置換された文字列を返します。文字列内に一致するものが見つからない場合、文字列は変更されずに返されます。 eregi_replace() は大文字と小文字を区別しません。

文字列内のすべての大文字以外の TM を大文字の TM に置き換える方法を示す例:

<?php
header("content-type:text/html;charset=utf-8");
$ereg = &#39;tm&#39;;
$str = &#39;hello ,tm,Tm,tM&#39;;
$rep_str = eregi_replace($ereg,&#39;TM&#39;,$str);
echo $rep_str;

注: 新しいバージョンでは、eregi_replace() は preg_replace() に置き換えられます。

以上がPOSIX 拡張正規表現関数の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。