NewIntroducing QODEX QA Services — platform-powered QA for API-driven teams.Learn more →
Phone Number Regex Go Validator

Telefonnummern-Regex-Go-Validator

Verwenden Sie den Telefonnummern-Regex-Go-Validator, um Telefonnummernformate mit dem regexp-Paket von Golang zu testen und zu validieren. Dieses Tool eignet sich ideal für Entwickler und Tester, die Registrierungsabläufe, Formularvalidierungen oder Telekommunikationsanwendungen erstellen. Prüfen Sie sofort, ob Ihr regex Mobilnummern, internationale Formate oder spezifische Ziffernmuster korrekt erkennt, ohne zusätzlichen Code schreiben zu müssen.


Benötigen Sie mehr Testeingaben? Nutzen Sie unseren Telefonnummern-Generator, den Postleitzahlen-Generator oder den Adressgenerator, um realistische Formulardaten zu simulieren.

Telefonnummern-Regex-Go-Validator, Dokumentation

Was ist Telefonnummern-Regex in Go?

In Go (Golang) werden reguläre Ausdrücke über die Standardbibliothek regexp verarbeitet. Die Validierung von Telefonnummern beinhaltet die Prüfung spezifischer Strukturen wie:

  • Ländercodes (z. B. +91, +1)

  • Vorwahlen

  • Optionale Trennzeichen wie Bindestriche, Leerzeichen oder Klammern

  • Variable Nummernlängen je nach Land oder Region

Telefonnummern-Regex ist besonders nützlich bei:

  • Formularvalidierungen bei Benutzerregistrierungen

  • Backend-Prüfungen in APIs oder Datenbanken

  • SMS-/Anrufsystemen

  • Telekommunikationssoftware und mobilen Anwendungen

Kernfunktionen und Konstrukte (Go-Regex)

Sonderzeichen

  • .: Entspricht einem beliebigen Zeichen außer Zeilenumbruch. Beispiel: /.23/ passt zu "a23", "x23"

  • ^: Verankert am Anfang der Zeichenkette. Beispiel: /^+91/ passt zu "+91xxxxx..."

  • $: Verankert am Ende der Zeichenkette. Beispiel: /123$/ passt zu Zeichenketten, die mit "123" enden

  • |: Wirkt als ODER. Beispiel: /landline|mobile/ passt zu beiden Wörtern

Zeichenklassen

  • [0-9]: Entspricht einer beliebigen Ziffer von 0 bis 9

  • [^0-9]: Entspricht einem beliebigen Nicht-Ziffer-Zeichen

  • [a-zA-Z]: Entspricht einem beliebigen Buchstaben (Klein- oder Großbuchstabe)

Vordefinierte Klassen

  • \d: Entspricht einer Ziffer, äquivalent zu [0-9]

  • \D: Entspricht einem Nicht-Ziffer-Zeichen

  • \s: Entspricht einem Leerzeichen

  • \S: Entspricht einem beliebigen Nicht-Leerzeichen

Quantifikatoren

  • *: Entspricht null oder mehr Vorkommen

  • +: Entspricht einem oder mehr Vorkommen

  • ?: Entspricht null oder einem Vorkommen (optional)

  • {n}: Entspricht genau n-mal

  • {n,}: Entspricht mindestens n-mal

  • {n,m}: Entspricht zwischen n und m-mal

Anzahl der Regex-Treffer begrenzen

Wenn Sie die Suche in Go auf eine begrenzte Anzahl von Treffern einschränken möchten, übergeben Sie einfach eine nicht-negative Ganzzahl als zweites Argument an Funktionen wie FindAllString oder FindAllStringSubmatch. Diese Zahl bestimmt, wie viele Treffer zurückgegeben werden, beginnend vom Anfang der Eingabezeichenkette. Das ist hilfreich, wenn Sie nur eine Teilmenge der Treffer benötigen, zum Beispiel die ersten zwei Telefonnummern aus einem langen Text.

Beispiel für ein Regex-Muster für Telefonnummern

^\+?[1-9]\d{1,3}?[-.\s]?\(?\d{1,4}?\)?[-.\s]?\d{1,9}([-.\s]?\d{1,9})?$

Dieses Muster erkennt:

  • Ländercodes wie +91, +44, +1

  • Optionale Trennzeichen wie Bindestriche, Punkte und Leerzeichen

  • Klammern für Vorwahlen

Wichtige Methoden des Go-regexp-Objekts

  • MatchString / Match: Prüft schnell, ob das Muster auf eine Zeichenkette oder einen []byte-Slice passt. Ideal für einfache Validierungsszenarien.

  • FindString / Find: Gibt den ersten übereinstimmenden Teilstring zurück.

  • FindStringIndex / FindIndex: Liefert Start- und Endposition des ersten Treffers.

  • FindStringSubmatch / FindSubmatch: Gibt den Gesamttreffer und alle Untergruppen zurück.

  • All-Varianten (z. B. FindAllString): Durchsucht die gesamte Eingabe und gibt alle Treffer zurück. Die Anzahl kann begrenzt werden.

  • ReplaceAllString / ReplaceAll: Ersetzt alle übereinstimmenden Teilstrings durch einen neuen Wert.

  • ReplaceAllFunc: Wendet eine Funktion auf jeden Treffer an, um ihn dynamisch zu transformieren.

Für globale Variablen mit Regex-Mustern verwenden Sie MustCompile statt Compile, um Fehler bei Programmstart sofort zu erkennen.

Go-Codebeispiele

Beispiel 1: Einfache Telefonnummernvalidierung

package main

import ( "fmt" "regexp" )

func main() { pattern := regexp.MustCompile(^\+?[0-9]{10,15}$) phone := "+14155552671" fmt.Println("Valid Phone:", pattern.MatchString(phone)) }

Probieren Sie ähnliche Muster im Go-Regex-Tester

Beispiel 2: Telefonnummern mit Trennzeichen

package main

import ( "fmt" "regexp" )

func main() { pattern := regexp.MustCompile(^$begin:math:text$?\\d{3}$end:math:text$?[-.\s]?\d{3}[-.\s]?\d{4}$) phone := "(415) 555-2671" fmt.Println("Valid Format:", pattern.MatchString(phone)) }

Erzeugen Sie echte Nummern mit dem Telefonnummern-Generator

Beispiel 3: Formularfeldtest mit Vorwahl

package main

import ( "fmt" "regexp" )

func main() { input := "+91-9876543210" regex := regexp.MustCompile(^\+91[-\s]?[6-9]\d{9}$) fmt.Println("Indian Mobile Number Valid:", regex.MatchString(input)) }

Kombinieren Sie dies mit dem Adressgenerator für vollständige Benutzertestdaten.

Index-Positionen von Treffern ermitteln

Um die genauen Start- und Endpositionen von Treffern sowie Untergruppen zu erhalten, verwenden Sie FindStringSubmatchIndex:

fmt.Println(r.FindStringSubmatchIndex("peach punch"))

Diese Funktion gibt ein Integer-Slice zurück, das die Byte-Indizes für den Gesamttreffer sowie jede Untergruppe enthält.

Ersten Treffer in einer Zeichenkette finden

pattern := regexp.MustCompile([a-zA-Z]+)
result := pattern.FindString("peach punch")
// result wird "peach" sein

Wenn es keinen Treffer gibt, wird eine leere Zeichenkette zurückgegeben.

Teilstrings mit regulären Ausdrücken ersetzen

Einfaches Ersetzen mit ReplaceAllString

package main

import ( "fmt" "regexp" )

func main() { r := regexp.MustCompile(peach) result := r.ReplaceAllString("a peach", "") fmt.Println(result) }

Erweitertes Ersetzen mit benutzerdefinierten Funktionen

package main

import ( "bytes" "fmt" "regexp" )

func main() { r := regexp.MustCompile([a-z]+) text := []byte("a peach") result := r.ReplaceAllFunc(text, bytes.ToUpper) fmt.Println(string(result)) }

Mit Byte-Slices arbeiten

In Go arbeiten Regex-Methoden nicht nur mit Zeichenketten. Wenn Ihre Daten als Byte-Slice ([]byte) vorliegen, verwenden Sie Methoden wie Match() statt MatchString():

pattern := regexp.MustCompile(peach)
text := []byte("peach")
fmt.Println("Matches byte slice:", pattern.Match(text))

Profi-Tipps

  • Verwenden Sie immer regexp.MustCompile() für statische Muster, um Laufzeitfehler zu vermeiden.

  • Für globale Variablen bevorzugen Sie MustCompile statt Compile, da ungültige Muster sofort beim Start einen Panic auslösen.

  • Verwenden Sie FindStringSubmatch(), um Teile wie Vorwahlen oder Durchwahlen zu extrahieren.

  • Vermeiden Sie zu gierige Ausdrücke wie .*; nutzen Sie Quantifikatoren wie {10,15} für mehr Genauigkeit.

  • Validieren Sie mit echten Testdaten aus Tools wie dem Telefonnummern-Generator oder dem Benutzernamen-Generator.

  • Verwenden Sie das Präfix (?i) für die Groß-/Kleinschreibungsunabhängigkeit.

Ergänzende Tools

Anwendungsfälle

  • Validierung von Registrierungsformularen

  • Mobile Verifizierung im E-Commerce

  • Telekommunikations-API-Tests

  • Testdatenerzeugung für QA-Teams

  • Datenmigration und -normalisierung

Regex für andere Sprachen

Frequently Asked Questions

Welche Formate unterstützen die Telefonnummern-Regex-Muster?

Sie unterstützen Mobil- und Festnetzformate mit oder ohne Ländercodes, einschließlich Trennzeichen wie Bindestriche, Leerzeichen oder Klammern.

Kann ich indische Telefonnummern mit diesem Tool validieren?

Ja! Verwenden Sie ein Muster wie ^\+91[6-9]\d{9}$, um indische Mobilnummern zu erkennen.

Was ist, wenn meine Nummer Durchwahlen enthält?

Fügen Sie einen Abschnitt wie (?:x\d{2,5})? hinzu, um Durchwahlen wie +1-800-555-1234x456 zu erkennen.

Kann ich mit Go-Regex Vorwahlen extrahieren?

Ja. Verwenden Sie Untergruppen () und greifen Sie über FindStringSubmatch() auf diese zu.

Ist dieser Regex-Validator Go-spezifisch?

Ja. Für andere Sprachen gibt es den Telefonnummern-Regex-Java-Validator, JavaScript-Regex-Tester oder Python-Regex-Tester.

Testen Sie Ihre APIs noch heute!

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