Pattern syntax

Every language port expands the same patterns. Length suffixes apply to character-class wildcards and to word/dictionary tokens. Try in sandbox →

Length forms

<wildcard>[{<start>[-<end>]}]

Examples: #, #{2}, #{1-3}.

Character classes

Token Alphabet
# digits 0-9 try
@ lowercase a-z try
* lowercase + digits try
& letters a-zA-Z try
! uppercase A-Z try
? uppercase + digits try
- letters + digits try

Word lists

${'blue,red,green',1-2}

Combinations of the comma-separated words, optional length range. Escape a literal comma inside a word with \,. try

Dictionaries

%{'planets'}
%{'colors',0-1}

Named word lists supplied by the host (CLI --dictionary, template JSON, or library options). Built-in demo dictionaries include colors, planets, and passwords.

Escaping

Prefix a wildcard character with \ to treat it as literal text, e.g. \# then ##0#9. try

CLI (shared)

wildling [options] [pattern ...]

--select #           print combination #
--range #-#          print inclusive range
--check              print generation info
--dictionary n:path  load dictionary file as n
--template path      load JSON template
--help / --version

Full help text lives in docs/help.txt. Out-of-range --select / --range write out of range: <index> on stderr and exit 1 (no stdout line).

Multipattern

Pass multiple patterns; iteration walks them in order. Total count is the sum of per-pattern counts. try