ホームページ > php教程 > php手册 > PHP 正規表現を使用して IP アドレスを決定する方法

PHP 正規表現を使用して IP アドレスを決定する方法

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
リリース: 2016-06-21 08:51:02
オリジナル
1832 人が閲覧しました

PHPを学習していると、PHPの正規表現を判断するという問題に遭遇することがあります。ここでは、PHPの正規表現の問題の解決策を紹介し、共有します。一部のクエリ Web サイトや検索エンジンでは、特定の文字列が標準 IP アドレスであるかどうかを判断するためによく使用されます。

例えば、BaiduでIPアドレスを検索するとIP情報が表示されますが、規格を満たしていないIPアドレスの場合はIP情報が表示されません。このとき、文字列が標準 IP であるかどうかを判断する必要があります。最も一般的に使用される方法は、PHP 正規表現を使用して判断することです。 IPアドレスの判定ルールをインターネットで調べてみましたが、単純すぎてIPフィールドが255以下であることだけを判定するものもあります。数値のみを指定でき、負の数値は指定できません。「.」を 4 つのセグメントのみに分割するなどの使用も可能です。完璧だと思う関数をコンパイルしました。コードは次のとおりです。

ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
  1. 		functionis_ip($gonten){  
    ログイン後にコピー
  2. $ip=explode(”.”,$gonten);
  3. for($i=0;$i {
  4. if($ip[$i]>255){
  5. リターン(0);
  6. }
  7. }
  8. returnereg("^[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}$", $ゴンテン);
  9. }
  10. $gonten はクエリ対象の文字列で、is_ip($gonten) で判断でき、FALSE と TRUE を返します。

1. eregi ステートメントでは大文字と小文字が区別されません

ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
  1. 		if(eregi("^[a-zA-Z0-9]{8,10}$","999999999"))echo"是八到十位的数字与字母"; 
    ログイン後にコピー
  2. 2. ereg_replace
は大文字と小文字を区別してテキストを置換します

ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
  1. 		$string="Thisisatest";  
    ログイン後にコピー
    // is を was
  2. に置き換えます
  3. echoereg_replace("は","だった",$string);
  4. また、これを使用して、括弧内の文字を逆引用符で囲むこともできます。0 はすべてを意味し、1 は最初に一致する文字列を意味し、同様に 9 まで続きます。特定のマニュアルで大文字と小文字を区別しない置換テキストに対する eregi_replace の使用法は上記と同じです
3. 大文字と小文字を区別して文字列をさまざまな要素に分割します

ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
  1. 		print_r(split("[\n\t]","我爱\n北京\t天安门")); 
    ログイン後にコピー
    大文字と小文字を区別しない除算: spliti ステートメントの使用法は上記と同じです
4. 大文字と小文字を区別する正規表現 sql_regcase

のみを調整します。

ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
  1. echosql_regcase($name);
    		$name="xuandun";  
    ログイン後にコピー


関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のおすすめ
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート