Heim >Backend-Entwicklung >PHP-Tutorial >So überprüfen Sie mithilfe eines regulären PHP-Ausdrucks, ob die Eingabezeichenfolge im IPv4-Adressformat vorliegt

So überprüfen Sie mithilfe eines regulären PHP-Ausdrucks, ob die Eingabezeichenfolge im IPv4-Adressformat vorliegt

WBOY
WBOYOriginal
2023-06-24 16:26:221275Durchsuche

So verwenden Sie reguläre PHP-Ausdrücke, um zu überprüfen, ob die Eingabezeichenfolge im IPv4-Adressformat vorliegt.

Im Internet sind IP-Adressen eine notwendige Voraussetzung für die Kommunikation untereinander, da IPv4 das am häufigsten verwendete IP-Adressformat ist Wird derzeit von den meisten Geräten verwendet. In PHP können wir reguläre Ausdrücke verwenden, um zu überprüfen, ob eine Eingabezeichenfolge eine IP-Adresse im IPv4-Format ist. In diesem Artikel wird erläutert, wie Sie mit regulären PHP-Ausdrücken überprüfen, ob die Eingabezeichenfolge im IPv4-Adressformat vorliegt.

IPv4-Adressformat

Eine IPv4-Adresse ist eine 32-Bit-Binärzahl, die normalerweise als vier Dezimalstellen geschrieben wird, wobei jede Zahl durch einen Punkt getrennt ist, z. B. 192.168.1.1. Im IPv4-Adressformat ist jede Zahl eine Dezimalzahl zwischen 0 und 255 und die IPv4-Adresse darf keine anderen Zeichen oder Satzzeichen enthalten.

Überprüfen Sie den regulären PHP-Ausdruck für die IPv4-Adresse.

In PHP können wir die Funktion preg_match verwenden, um zu überprüfen, ob eine Zeichenfolge mit einem bestimmten regulären Ausdruck übereinstimmt. Das Folgende ist ein regulärer PHP-Ausdruck zur Validierung von IPv4-Adressen:

$ipv4_regex = "/^([01]?[0-9]{1,2}|2[0-4][0-9]|25[0-5]).([01]?[0-9]{1,2}|2[0-4][0-9]|25[0-5]).([01]?[0-9]{1,2}|2[0-4][0-9]|25[0-5]).([01]?[0-9]{1,2}|2[0-4][0-9]|25[0-5])$/";

Dieser reguläre Ausdruck enthält vier Unterausdrücke, die jeweils zum Abgleichen von vier Dezimalstellen verwendet werden, und jeder Unterausdruck besteht aus den folgenden drei Teilen:

  1. [01]?[ 0-9]{1,2}: Entspricht Zahlen zwischen 0 und 99 und ermöglicht Zahlen, die mit 0 beginnen.
  2. [01]?[0-9]{1,2}:匹配0到99之间的数字,允许数字以0开头。
  3. 2[0-4][0-9]:匹配200到249之间的数字。
  4. 25[0-5]:匹配250到255之间的数字。

使用以上正则表达式可以匹配符合IPv4地址格式的IP地址字符串。

IP地址验证的PHP代码实现

下面是一个完整的PHP例子,用于检查一个输入字符串是否符合IPv4地址格式:

function validate_ipv4_address($ipv4_string) {
  $ipv4_regex = "/^([01]?[0-9]{1,2}|2[0-4][0-9]|25[0-5]).([01]?[0-9]{1,2}|2[0-4][0-9]|25[0-5]).([01]?[0-9]{1,2}|2[0-4][0-9]|25[0-5]).([01]?[0-9]{1,2}|2[0-4][0-9]|25[0-5])$/";
  return preg_match($ipv4_regex, $ipv4_string);
}

// Example usage:
$valid_ipv4_address = "192.168.1.1";
$invalid_ipv4_address = "192.168.1.333";

if(validate_ipv4_address($valid_ipv4_address)) {
  echo "$valid_ipv4_address is a valid IPv4 address";
} else {
  echo "$valid_ipv4_address is not a valid IPv4 address";
}

if(validate_ipv4_address($invalid_ipv4_address)) {
  echo "$invalid_ipv4_address is a valid IPv4 address";
} else {
  echo "$invalid_ipv4_address is not a valid IPv4 address";
}

当输入一个符合IPv4地址格式的字符串时,validate_ipv4_address函数将返回1,否则将返回02[0-4][0-9]: Entspricht Zahlen zwischen 200 und 249.

25[0-5]: Entspricht Zahlen zwischen 250 und 255.

Verwenden Sie den obigen regulären Ausdruck, um IP-Adresszeichenfolgen abzugleichen, die dem IPv4-Adressformat entsprechen.

PHP-Code-Implementierung zur IP-Adressüberprüfung

🎜Das Folgende ist ein vollständiges PHP-Beispiel zur Überprüfung, ob eine Eingabezeichenfolge dem IPv4-Adressformat entspricht: 🎜rrreee🎜Bei Eingabe einer Zeichenfolge, die dem IPv4-Adressformat entspricht, Die validierte_ipv4-Adresse Die Funktion gibt 1 zurück, andernfalls gibt sie 0 zurück. Im obigen Beispiel gibt die erste Ausgabeanweisung „192.168.1.1 ist eine gültige IPv4-Adresse“ aus, während die zweite Ausgabeanweisung „192.168.1.333 ist keine gültige IPv4-Adresse“ ausgibt. 🎜🎜Fazit🎜🎜Durch die Verwendung regulärer PHP-Ausdrücke können wir leicht überprüfen, ob die Eingabezeichenfolge im IPv4-Adressformat vorliegt. Das obige Beispiel kann als Referenz für die Verwendung regulärer PHP-Ausdrücke in Anwendungen verwendet werden, die IPv4-Adressen überprüfen müssen. 🎜

Das obige ist der detaillierte Inhalt vonSo überprüfen Sie mithilfe eines regulären PHP-Ausdrucks, ob die Eingabezeichenfolge im IPv4-Adressformat vorliegt. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn