Launching a SaaS?·Collect waitlist signups before you build — before.run
SandboxPatternsDetectDocsChangelog
Crypto
#bip39
#mnemonic
#seed
#wallet

BIP-39 Mnemonic Phrase

Matches a BIP-39 mnemonic seed phrase — 12, 15, 18, 21, or 24 lowercase English words separated by single spaces.

Wallet backup verificationSeed phrase format validationCrypto onboarding
/
/
Risk
Test String
1 match
^^^ — start of string (or line in multiline mode)
(…){11,23}Group #1Capturing group — captures matched text for reuse or extraction — repeated between 11 and 23 times · {11,23} — between 11 and 23 times
[…]+Character class […]Matches any single character listed in this set — repeated one or more times (greedy) · + — one or more times (greedy)
\sspace\s — whitespace (space, tab, newline…)
[…]+Character class […]Matches any single character listed in this set — repeated one or more times (greedy) · + — one or more times (greedy)
a-za-za-z — range from 'a' to 'z'
$$$ — end of string (or line in multiline mode)
Pattern: 25 charsInput: 143 chars
100% client-side · private

Valid Examples

  • abandon abandon abandon abandon abandon abandon abandon abandon abandon abandon abandon about
  • zoo zoo zoo zoo zoo zoo zoo zoo zoo zoo zoo wrong

Invalid Examples

  • abandon abandon
  • ABANDON ABANDON ABANDON
  • abandon double-space

Usage & Integration

Validate BIP-39 Mnemonic Phrase natively in your backend or frontend without copying regex strings.

Node / Edge

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

validate('crypto-mnemonic-word', '...');

Python

from regexto_validators import validate

validate("crypto-mnemonic-word", "...")

Go

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

valid, err := validators.Validate("crypto-mnemonic-word", "...")

PHP

use RegexTo\Validators\Validator;

Validator::validate('crypto-mnemonic-word', '...');

Rust

use regexto_validators::validate;

let is_valid = validate("crypto-mnemonic-word", "...").unwrap();