Logo Wand.Tools

Generatore di espressioni regolari

Genera e spiega intelligentemente le espressioni regolari, supporta vari pattern di corrispondenza comuni

Tutorial completo sulla corrispondenza di indirizzi IP con espressioni regolari (con esempi di codice)

  # Tutorial completo sulla corrispondenza di indirizzi IP con espressioni regolari (con esempi di codice)
  
  Questo tutorial fornisce una guida dettagliata su come utilizzare le espressioni regolari per trovare corrispondenze tra indirizzi IPv4 e IPv6, adatto per scenari come l'analisi dei log, la pulizia dei dati e il filtraggio di sicurezza. Supporta implementazioni multilingue e include una spiegazione dettagliata della sintassi delle espressioni regolari ed esempi comuni per aiutarti a padroneggiare rapidamente le tecniche di corrispondenza degli indirizzi IP.
  
  ## 📌 Corrispondenza di indirizzi IPv4 con espressioni regolari
  
  Un indirizzo IPv4 è costituito da quattro numeri compresi tra 0 e 255, separati da un punto `.`.
  
  ### ✅ Espressione regolare IPv4
  
  ```regex
  \b(?:(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]?\d)(?:\.|$)){4}\b

🧪 Esempio di codice (Python)

import re

pattern = r'\b(?:(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]?\d)(?:\.|$)){4}\b'
text = "Indirizzo IP valido: 192.168.1.1, IP non valido: 256.300.88.1"

matches = re.findall(pattern, text)
print("Risultati corrispondenza:", matches)

🌐 Corrispondenza di indirizzi IPv6 con espressioni regolari

Un indirizzo IPv6 è costituito da 8 gruppi di numeri esadecimali, separati da due punti :, e può utilizzare la forma abbreviata :: per rappresentare campi di zero consecutivi.

✅ Espressione regolare IPv6

\b((?:(?:[0-9a-fA-F]{1,4}):){7}[0-9a-fA-F]{1,4}|(?:[0-9a-fA-F]{1,4}:){1,7}:|:(?::[0-9a-fA-F]{1,4}){1,7}|::)\b

🧪 Esempio di codice (Python)

import re

pattern = r'\b((?:(?:[0-9a-fA-F]{1,4}):){7}[0-9a-fA-F]{1,4}|(?:[0-9a-fA-F]{1,4}:){1,7}:|:(?::[0-9a-fA-F]{1,4}){1,7}|::)\b'
text = "Esempio di indirizzo IPv6: 2001:0db8:85a3:0000:0000:8a2e:0370:7334, Forma abbreviata ::1"

matches = re.findall(pattern, text)
print("Risultati corrispondenza:", matches)

🚀 Supporto multilingue

Esempio JavaScript

const ipv4Regex = /\b(?:(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]?\d)(?:\.|$)){4}\b/g;
const text = "Gli indirizzi IP includono 127.0.0.1 e 999.999.999.999";
const matches = text.match(ipv4Regex);
console.log("Risultati corrispondenza:", matches);

🔍 Riepilogo dei punti chiave delle espressioni regolari

  • 25[0-5]: Trova numeri tra 250 e 255
  • 2[0-4]\d: Trova 200 a 249
  • 1\d{2}: Trova 100 a 199
  • [1-9]?\d: Trova 0 a 99
  • (?:...): Gruppo non catturante
  • \b: Confine di parola, assicura la corrispondenza di un IP completo