Launching a SaaS?·Collect waitlist signups before you build — before.run
SandboxPatternsDetectDocsChangelog
Phone
#phone
#germany
#de
#telephone

German Phone Number

Validates German phone numbers in international (+49) and domestic (0) formats, with optional spaces, hyphens, or dots as separators.

✓ German checkout forms✓ Contact directory validation✓ EU compliance forms
/
/
Safe
Test String
3 matches
(?:…)Non-capturing group— Non-capturing group — groups without capturing (no index assigned)
\+\+— \+ — escaped character '+'
44— '4' — literal character
99— '9' — literal character
||— | — alternation: matches expression on left OR right
00— '0' — literal character
[…]?Character class […]— Matches any single character listed in this set — repeated zero or one time (optional) · ? — zero or one time (optional)
\sspace— \s — whitespace (space, tab, newline…)
..— '.' — literal character
\-\-— \- — escaped character
(?:…)Non-capturing group— Non-capturing group — groups without capturing (no index assigned)
\(\(— \( — escaped character '('
\d{1,5}digit— \d — digit (0–9) — repeated between 1 and 5 times · {1,5} — between 1 and 5 times
\)\)— \) — escaped character ')'
||— | — alternation: matches expression on left OR right
\d{1,5}digit— \d — digit (0–9) — repeated between 1 and 5 times · {1,5} — between 1 and 5 times
[…]?Character class […]— Matches any single character listed in this set — repeated zero or one time (optional) · ? — zero or one time (optional)
\sspace— \s — whitespace (space, tab, newline…)
..— '.' — literal character
\-\-— \- — escaped character
\d{1,9}digit— \d — digit (0–9) — repeated between 1 and 9 times · {1,9} — between 1 and 9 times
(?:…)*Non-capturing group— Non-capturing group — groups without capturing (no index assigned) — repeated zero or more times (greedy) · * — zero or more times (greedy)
[…]Character class […]— Matches any single character listed in this set
\d{1,9}digit— \d — digit (0–9) — repeated between 1 and 9 times · {1,9} — between 1 and 9 times
Pattern: 75 charsInput: 69 chars
100% client-side · private

✓ Valid Examples

  • +49 30 12345678
  • +49-89-9876543
  • 030 12345678
  • 0176 12345678
  • +4930123456

✗ Invalid Examples

  • 12345678
  • +1 800 555 0100
  • +49
  • abcdefgh

Usage & Integration

Validate German Phone Number natively in your backend or frontend without copying regex strings.

Node / Edge

import { validate } from '@regexto/validators';

validate('phone-de', '...');

Python

from regexto_validators import validate

validate("phone-de", "...")

Go

import "github.com/regex-to/validators-go"

valid, err := validators.Validate("phone-de", "...")

PHP

use RegexTo\Validators\Validator;

Validator::validate('phone-de', '...');

Rust

use regexto_validators::validate;

let is_valid = validate("phone-de", "...").unwrap();