NewIntroducing QODEX QA Services — platform-powered QA for API-driven teams.Learn more →
MAC-Adress-Regex-Validator für Go

MAC-Adress-Regex-Validator für Go

Möchten Sie MAC-Adressen in Go validieren? Der Qodex MAC-Adress-Regex-Validator für Go hilft sicherzustellen, dass Ihre Muster Standardformate wie 01:23:45:67:89:AB treffen. Ideal für Netzwerke, Geräteauthentifizierung und Eingabevalidierung.


Kombinieren Sie ihn mit dem IP-Regex-Validator für Go, dem UUID-Generator oder dem API-Key-Generator für sichere Test-Setups. Ergänzen Sie ihn mit dem Benutzernamen-Generator, E-Mail-Generator oder Telefonnummern-Generator, um vollständige Mock-Profile zu erstellen.

MAC-Adress-Regex-Validator für Go, Dokumentation

MAC-Adress-Regex-Validator für Go

Eine MAC-Adresse (Media Access Control Address) ist ein eindeutiger Identifier zur Kennzeichnung von Geräten in einem Netzwerk. Die Validierung dieser Adressen ist in Systemen, die Hardwarekomponenten verfolgen, autorisieren oder mit ihnen kommunizieren, von entscheidender Bedeutung. Der Qodex MAC-Adress-Regex-Validator für Go hilft Entwicklern und Testern dabei, schnell zu prüfen, ob ein String das gültige MAC-Format einhält, unter Verwendung des Go-Pakets regexp.

Was ist ein MAC-Adress-Regex?

In Go können Sie reguläre Ausdrücke verwenden, um MAC-Adressmuster zu erkennen. Eine typische MAC-Adresse sieht so aus:

01:23:45:67:89:AB
oder
01-23-45-67-89-AB

MAC-Adressen bestehen aus sechs Gruppen von je zwei Hexadezimalziffern, die durch Doppelpunkte oder Bindestriche getrennt sind. Der Regex muss dieses Format sicherstellen, ohne zusätzliche Zeichen oder fehlende Segmente zuzulassen.

Regex-Muster für MAC-Adressen

Hier ist der empfohlene Go-Regex für Standard-MAC-Adressen:

^([0-9a-fA-F]{2}[:-]){5}[0-9a-fA-F]{2}$

Bedeutung:

  • ^ - Anfang des Strings

  • ([0-9a-fA-F]{2}[:-]){5} - Fünf Paare von Hex-Ziffern, gefolgt von : oder -

  • [0-9a-fA-F]{2} - Letztes Paar ohne Trennzeichen

  • $ - Ende des Strings

Damit wird sichergestellt, dass der String genau 6 Paare enthält und konsistente Trennzeichen verwendet.

Leistungsüberlegungen

Bei der Verwendung eines regulären Ausdrucks zur Validierung einer MAC-Adresse in Go ist der Prozess generell sehr effizient. Die Regex-Engine prüft jedes Zeichen im Eingabestring genau einmal, was zu einer Zeitkomplexität von O(N) führt, wobei N die Länge des zu prüfenden MAC-Adress-Strings ist. Der Speicherverbrauch ist minimal, da der reguläre Ausdruck nur eine konstante Menge an zusätzlichem Speicher benötigt (O(1) Hilfsspeicher), unabhängig von der Eingabelänge.

So funktioniert es

  1. Ihren Regex eingeben oder einfügen (oder den Standard verwenden).

  2. Eine Test-MAC-Adresse eingeben.

  3. Sofort sehen, ob sie übereinstimmt oder nicht.

  4. Muster nach Bedarf anpassen und erneut validieren.

Beispiel: Einfacher Validator

Verwenden Sie den Go-Regex-Tester, um mit Varianten zu experimentieren.

package main

import ( "fmt" "regexp" )

func isValidMAC(mac string) bool { pattern := ^([0-9a-fA-F]{2}[:-]){5}[0-9a-fA-F]{2}$ macRegex := regexp.MustCompile(pattern) return macRegex.MatchString(mac) }

func main() { fmt.Println(isValidMAC("00:1A:2B:3C:4D:5E")) // true fmt.Println(isValidMAC("00-1A-2B-3C-4D-5E")) // true fmt.Println(isValidMAC("001A.2B3C.4D5E")) // false fmt.Println(isValidMAC("01-23-45-67-89-AH")) // false fmt.Println(isValidMAC("01-23-45-67-AH")) // false }

Eingabe: "00-1A-2B-3C-4D-5E"
Ausgabe: true
Erläuterung: Dieser String entspricht dem erwarteten MAC-Adressformat mit sechs Gruppen von je zwei Hexadezimalziffern, die durch Bindestriche getrennt sind.

Eingabe: "00:1A:2B:3C:4D:5E"
Ausgabe: true
Erläuterung: Doppelpunkte sind ebenfalls gültige Trennzeichen, daher besteht dieses Format die Prüfung.

Eingabe: "001A.2B3C.4D5E"
Ausgabe: false
Erläuterung: Punkte sind in diesem Muster keine gültigen Trennzeichen.

Eingabe: "01-23-45-67-89-AH"
Ausgabe: false
Erläuterung: 'H' ist keine gültige Hexadezimalziffer (muss 0-9, a-f oder A-F sein).

Eingabe: "01-23-45-67-AH"
Ausgabe: false
Erläuterung: Dieser String hat nur fünf Gruppen statt sechs.

Wann sollten Sie MAC-Regex-Validierung verwenden?

  • Geräteregistrierungssysteme: MAC-IDs beim Onboarding validieren.

  • Netzwerk-Tools: Saubere, verwendbare MAC-Eingaben vor dem Verbindungsaufbau sicherstellen.

  • IoT und eingebettete Systeme: Geräte konsistent über Logs hinweg identifizieren.

  • Sicherheitssoftware: MACs mittels Regex-basierter Filterung auf eine Whitelist setzen.

MAC-Adressen in JavaScript validieren

Wenn Sie MAC-Adressen mit JavaScript validieren möchten, bietet ein regulärer Ausdruck eine prägnante und effiziente Lösung.

function isValidMacAddress(mac) {
const macRegex = /^([0-9A-Fa-f]{2}[:-]){5}([0-9A-Fa-f]{2})$/;
return macRegex.test(mac);
}

console.log(isValidMacAddress('01-23-45-67-89-AB')); // true console.log(isValidMacAddress('01:23:45:67:89:AB')); // true console.log(isValidMacAddress('0123.4567.89AB')); // false

MAC-Adressen in Python validieren

Hier ein prägnantes Python-Beispiel zur Prüfung gültiger MAC-Adressen in Doppelpunkt- und Bindestrich-Format:

import re

def is_valid_mac(mac): pattern = r"^([0-9A-Fa-f]{2}[:-]){5}([0-9A-Fa-f]{2})$" return bool(re.match(pattern, mac))

Verwendungsbeispiele:

print(is_valid_mac("01-23-45-67-89-AB")) # True print(is_valid_mac("01:23:45:67:89:AB")) # True print(is_valid_mac("0123.4567.89AB")) # False print(is_valid_mac("01-23-45-67-89-AH")) # False

MAC-Adressen in Java validieren

In Java können Sie reguläre Ausdrücke verwenden, um Standardformate zu prüfen. Hier ein direkter Ansatz:

import java.util.regex.Pattern;

public static boolean isValidMAC(String input) { if (input == null) return false; String regex = "^([0-9A-Fa-f]{2}[:-]){5}([0-9A-Fa-f]{2})$"; return Pattern.matches(regex, input); }

System.out.println(isValidMAC("01:23:45:67:89:AB")); // true System.out.println(isValidMAC("01-23-45-67-89-AB")); // true System.out.println(isValidMAC("01-23-45-67-89-AH")); // false

Profi-Tipps für bessere MAC-Regex-Validierung

  • [0-9a-fA-F] verwenden, um Groß- und Kleinschreibung abzudecken.

  • Einen Trennzeichenstil (Doppelpunkt oder Bindestrich) innerhalb eines Regex beibehalten, um Muster strikt zu halten.

  • Muster vermeiden, die nachgestellte Zeichen oder falsche Segmentlängen zulassen.

  • Beim Vergleich mehrerer Geräteattribute mit dem IP-Adress-Generator oder UUID-Generator kombinieren.

Nützliche Metazeichen für MAC-Regex

  • ^: Anfang des Strings

  • $: Ende des Strings

  • [0-9a-fA-F]: Jede Hexadezimalziffer (Groß-/Kleinschreibung ignoriert)

  • {2}: Genau zwei Zeichen

  • [:-]: Doppelpunkt oder Bindestrich als Trennzeichen

  • {5}: Fünfmalige Wiederholung

Sie können dieses Muster direkt in den Go-Regex-Tester kopieren, um Ihre Logik live zu testen.

Kombinieren Sie es mit diesen Tools

Frequently Asked Questions

Was gilt als gültiges MAC-Adressformat?

Eine gültige MAC-Adresse besteht aus sechs Gruppen von je zwei Hexadezimalzeichen, getrennt durch Doppelpunkte (:) oder Bindestriche (-). Beispiel: 00:1A:2B:3C:4D:5E oder 00-1A-2B-3C-4D-5E.

Funktioniert der Regex auch mit Kleinbuchstaben in der MAC-Adresse?

Ja, MAC-Adressen sind nicht Groß-/Kleinschreibungs-sensitiv, daher sind sowohl Kleinbuchstaben (a-f) als auch Großbuchstaben (A-F) gültig.

Kann ich gemischte Trennzeichen wie Doppelpunkt und Bindestrich in einer Adresse verwenden?

Nein, eine gültige MAC-Adresse sollte durchgehend entweder Doppelpunkte oder Bindestriche verwenden. Gemischte Trennzeichen werden vom Standardmuster nicht unterstützt.

Was passiert, wenn ich mehr oder weniger Gruppen als erforderlich eingebe?

Das Regex-Muster weist die Eingabe zurück. Eine MAC-Adresse muss genau sechs Gruppen von je zwei Hexadezimalziffern haben.

Unterstützt dieser Validator MAC-Adressen im Cisco-Stil mit Punkten?

Nein, das aktuelle Muster erkennt keine Punkt-getrennten Formate wie 001A.2B3C.4D5E. Es konzentriert sich auf Doppelpunkt- und Bindestrich-getrennte MAC-Formate.

Testen Sie Ihre APIs noch heute!

Schreiben Sie auf Deutsch, Qodex erstellt daraus sichere, sofort ausführbare Tests.