Tool.Yun
Handy værktøjer for udviklere
Beskær billede
Billede til SVG (potrace)
Billedfarveinverter
Billedformatkonverter
Billedsammenligning
Billedstørrelsesjustering
EXIF/Metadata/GPS/JPEG-kvalitetslæser for billeder
Fjern EXIF
Fjern billedets baggrund
GIF til MP4
HEIC-konverter
ICO/PNG-konverter
Kamera optager
OCRize billede og PDF
SVG-forhåndsvisning
Vandmærke
AGE Kryptografi
Argon2 Hasher
Bcrypt
Bech32-encoder/dekoder
CRC-beregner
CSR-generator
Certifikat-/nøgleparser
Dekryptering af Ansible Vault-kryptering
ECDSA-nøglepargenerator
Ed25519 nøglepargenerator
Filhasher
HMAC generator
Hash-tekst
JWT fortolker
JWT-generator
Jasypt-strengkryptering
Krypter / dekrypter tekst
Niceware Bytes til adgangskode
PGP-filkryptering
PGP-kryptering
PGP-nøglegenerator
Paseto/PASERK Lokal
Paseto/PASERK Offentlig/Privat
RSA nøglepar generator
RSA-kryptering
RSA/DSA/ECDSA-underskriver og -verifikator
SAML Parser
SSL-certifikatkonverter
Shamirs hemmelige deling
X509 certifikatgenerator
BMI-beregner
Forklar Shell-kommandoen
IBAN validator og fortolker
IES belysningsretningslinjer
ISBN-validator og parser
ISO 3166 landekodesøgning
ISO 639-søger
Kalenderkonverter
Kompatibilitet med softwarelicenser
Kreditkorttjekker
Luhn-validator
Løbetempoberegner
Momsnummervalidator
Online ordbog
RMB Store Bogstaver Konverter
SLA-beregner
Telefon fortolker og formatter
Unicode-søgning
Valutaomregner
Cron/Ugedagsalarm
Dageberegner
Dato+Varighedsberegner
Dato-tid konverter
ETA beregner
Hvilken dag?
ICAL-filparser
ICAL-generator
Nedtælling
Stop-ur
TTL-beregner
Tidsalarm
Tidszonekonverter
Ugetalkonverter
Varighedsberegner
iCal-fusion
Docker Compose Format Converter
Docker Compose Validator
Docker Compose til .env-fil
Docker Compose til Docker-kørselskonverter
Docker Compose til Quadlets
Docker Pangolin-etiketter
Docker run til Docker compose konverter
Docker-billeddownloader
Docker-inspektion for at køre Docker
Docker-kørsel til Kubernetes
Docker-kørsel til Quadlets
Docker-skrivning til Kubernetes
Dockerfile-etiketgenerator
Kubernetes RBAC-generator
Traefik Docker Compose Maker
Amortiseringsberegner
Accelerationskonverter
Arealenhedsomregner
Energienhedsomregner
Fitnesscomputer
Frekvensomformer
Hastighedskonverter
Illuminanskonverter
Kraftenhedskonverter
Længdeenhedskonverter
Madenergikonverter
Masseenhedsomregner
SI-præfikser konverter
Strømomformer
Temperaturkonverter
Trykenhedskonverter
Vinkelenhedskonverter
Volumenenhedskonverter
Volumenstrømningshastighedskonverter
Adgangskodegenerator
BIP39 adgangskode generator
Diceware adgangskodegenerator
Generator for tilfældige tal
NanoID-generator
Numeronym generator
OTP kode generator
Postkodegenerator
Token generator
UUID generator
UUID-konverter
CSV til JSON
JS til JSON konverter
JSON Linter
JSON difference
JSON minificering
JSON prettify og formatér
JSON til .env
JSON til C#
JSON til CSV
JSON til JS konverter
JSON til Java-enhed
JSON til MessagePack
JSON til TOML
JSON til TS
JSON til XML
JSON til YAML konverter
JSON til at gå
JSON til data
JSON til objekt
JSON-editor
JSON-fusion
JSON-sorteringsmaster
JSON-udjævning/ophævelse af udjævning
Jq/JSONPath-tester
Json Escaper/Unescaper
Json til PHP-array
Json til PHP-kode
Json til Python
Json til SQL DDL
Json til skema
Json-forespørgsel
Json-strengkonverter
Json-størrelsesanalysator
Meddelelsespakke til JSON
ObjGen til JSON
PHP-Array til JSON
tools.json-patch.name
Base64 Hex array-encoder/dekoder
Base64 filkonverter
Base64 streng koder/afkoder
Csv til data
E-mail normalisering
Egenskabskonverter
Energiforbrugs- og udgiftscomputer
Excel til data
Geografiske koordinatkonverter
Heltalsbase-konverter
Konverter til datalagringsenhed
Konverter til konvolutvariabler
Mange enheder konverter
Romertal konverter
Tekst til UTF-8 binær
Tekst til Unicode
Torrent til magnet
ULID generator
Unicode-tegn til Java-enheder konverter
dBm mW-konverter
Binær lommeregner
Drikkepengeberegner
Matematik OCR
Matematik evalueringsværktøj
Matematikformatkonverter
Trigonometrisk/ligningskurvevisualisator
Cron-udtryksbygger
Benchmark bygger
Billedformatberegner
Geografisk afstandsberegner
Procent lommeregner
Epub til Markdown
Forhåndsvisning af Markdown
Generator for markdown-tabel
HTML til markdown
Indsæt som Markdown
Markdown Lorem Ipsum
Markdown Table Pretifier
Markdown til HTML
Markdown til tekst
Markdown-editor
Markdown-indholdsfortegnelsesgenerator
Nedskrivning til DOCX
Nedskæring til data
Nedsættelsesforskel
tools.markdown-format-converter.name
ARPA-dekoder
Apache LogRotate Generator
BIMI DNS-generator
Basic auth generator
Chmod beregner
Cloudflare DNS/RDAP-forespørgsler
Crontab generator
DKIM DNS-generator
DMARC DNS-generator
DNS-forespørgsler
DNSBL-tjekker
Dataoverførselshastighedsberegner
FStab-generator
Generator for nedlukningskommandoer
HAS Desinfektionsmiddel
HDD-lommeregner
HTAccess-generator
Heltal til IPv4/IPv6
Htpasswd/htaccess-generator
IP-geografisk placering
IP-undernets ekskluderingsberegner
IPv4 adressekonverter
IPv4 rækkeudvider
IPv4 subnet beregner
IPv4-6/IPRange/CIDR i IPRange/CIDR/IPMaske
IPv4-undernetliste
IPv4/6-område til CIDR(er)-beregner
IPv6 ULA generator
IPv6-adressekonverter
Iptables Generator
Ipv4/6 CIDR til IP-områdeberegner
Ipv6-subnetberegner
Kodeords styrke analysator
Krøllekommandogenerator
Linearisering af Shell-kommandoer
MAC adresse generator
MAC-adressekonverter
Mikrofontester
Min IP-adresse
Multi-link downloader
Nginx-formateringsprogram
Option43-generator
PTR DNS-generator
Ping
Portnumre
Punycode-konverter
RAID-beregner
RAID-pålidelighedsberegner
Rsync-generator
SIP-autorisation
SPF DNS-generator
Shell-kommandoformatering
Slå MAC adresse op
TCP/UDP-porttester
Tilfældig port-generator
UFW-kommandogenerator
Visuel subnetberegner
WPA PSK-generator
Websocket-testning
Whois-tjekker
Wireguard-konfigurationsgenerator
X-VR-SpamCause-dekoder
ZPOOL RAID-beregner
ZPool snydeark
Zxcvbn adgangskodestyrke
firewalld kommandolinjegenerator
tools.restic-command-generator.name
tools.url-redirection-checker.name
HTML til PDF
PDF signaturkontrol
PDF-kompressor
PDF-tekstudtrækker
Pdf Linearize/FastWeb
Pdf-dekryptering og oplåsning
Pdf-kryptering
Pdf-sammenkædning
Pdf-sideudtrækker
ActiveDirectory LDAP-egenskabssøger
Cookie-parser
DMARC-rapportanalysator
DNS-forplantningstest
DNS-tester
Død pixel-tester
E-mail-parser
EMV TLV-dekoder
ETH-transaktionsdekoder
Filtypedetektor
Flydende kommatalkonverter
GZip/Deflate-konverter
HTTPS-tester
Hex-encoder/dekoder
Keycode info
MIME-kodningskonverter
Maskering af følsomme data
Middle-Endian-konverter
Modstandsberegner
MongoDB ObjectId-konverter
Nmap-kommandobygger
Outlook MSG-parser
Outlook Safelink-dekoder
Parketfiler Læser
Parser af afviste e-mails
RJ45 Cat6-ledningsføringssnydark
SMART Raw-konverter
Seriel portkonsol
SharePoint Share URL-afkoder
Snefnug-ID-udtrækker
TCDump-generator
Teksttegnsætdetektor/dekoder
URL fortolker
URL-bygger
Udvider af korte URL'er
键盘测试器
Almindelig Regex-snydeark
Bash snydeark
CSS-selektorer snydeark
Docker Compose cheatsheet
Docker SWARM snydeark
Docker-snydeark
Dockerfile snydeark
Git Semantic Commit Cheatsheet
Git snydeark
JSONPath Syntaks Cheatsheet
Jq snydeark
K8s snydeark
Markdown-snydeark
Nano-snydeark
Nginx snydeark
Powershell snydeark
Regex snydeark
Sed snydeark
Snydeark til skærmkommandoer
Tmux-kommando-snydeark
VIM-snydeark
XPath-syntaks-cheatsheet
Zellij-kommando-snydeark
chmod-kommando-snydeark
Kortvælger
Lykkehjul
Møntflipper
Terningkaster
GTIN-validator
QR kode generator
QR-kodedekoder
QR-kontaktinfogenerator
Stregkodegenerator
Stregkodelæser
WiFi QR kode generator
tools.epc-qrcode-generator.name
TOML Linter
TOML til JSON
TOML til YAML
AI-promptsplitter
ASCII kunsttekstgenerator
Billede til ASCII-kunst
Case konverter
Citationsgenerator
Emoji vælger
Finder af duplikerede linjer
Forskellige ord
GPT-token-encoder/dekoder
GPT-tokenestimator
Havfrueeksportør
I og L Checker
JSON til TOON
Levenshtein-lommeregner
Liste konverter
Lister Sammenlign
Lorem ipsum generator
Mappestrukturdiagram
Morsekodekonverter
Pak filer til AI
RSVP-læser
Regex-tester
Runekonverter
Sammenlign skrifttyper
Sed-kommandogenerator
Smart teksterstatning og linjebryder
Social linkdeler
Streng obfuskator
TOON til JSON
Tabulator til mellemrum
Tastaturlayoutkonverter
Tekst difference
Tekst til NATO-alfabetet
Tekst til Unicode-navne
Tekstoversætter
Tekststatistik
Tilfældig linjevælger
Udtræk tekst fra HTML
Unicode til GSM-7
Unicode-formatering
Zalgo Generator/Banner
ANSI Escape Tester
API-tests
CSS/JS Forskøn og minimer
Citatkonverter
Cli-kommandoeditor
Databaseoprettelsesværktøj
Databasetabelgenerator
Dataforfalsker
Django Secret Generator
Favicon-generator
Fildeler
GitIgnore-generator
Gitaattributgenerator
HEX-filkonverter
Javascript Obfuscator
Javascript Prettifier
Javascript Unfuscator/Unpacker
Json til Protobuf
Json til SQL INSERT
Json til Typescript
K6 load test script generator
Kode/Scripts-markør
Krøllekonverter
Mailto-generator
Open graph meta generator
Picomatch-tester
Pomodoro-timer
SQL prettify og formater
SQL-minifikator
SQL-parametergenerator
Stacktrace pænere
Strengeudløser
Stringgenerator til databaseforbindelse
Swagger UI-tester
Billede til CSS
CSS Gradientgenerator
CSS XPath-konverter
CSS-enhedskonverter
CSS-pænere
Enhedsoplysninger
Farve konvertering
Farvehjul
Farvekontrastkontrol
HTML WYSIWYG editor
HTML til XHTML
HTML til data
HTML-minimer
HTTP status koder
Html-forsmagningsværktøj
Html-renser
Kod/afkod URL-formatteret strenge
MIME typer
REM Pixel-konverter
SVG pladsholder generator
Slugify streng
URL-fanger
URL-renser
UTM URL-generator
Undslip HTML
Url-tekstsøgningsfragmentopretter
User-agent fortolker
ObjGen til HTML
XML formatter
XML til JSON
XML-linter
XPath-tester
XSLT-tester
YAML prettify og format
YAML til JSON konverter
YAML til TOML
YAML-fusion
YAML-udjævning/ophævelse af udjævning

Regex snydeark

Javascript Regex/Regular Expressions cheatsheet

Regular expressions describe a pattern that text either matches or does not. The syntax below is the JavaScript flavour; PCRE, Python, Go and Java agree on almost all of it — the differences are called out where they bite.

/^\d{4}-\d{2}-\d{2}$/.test('2026-08-22'); // true
'a1b2'.replace(/\d/g, '#'); // 'a#b#'

🔡 Character Classes

ExpressionMatches
.Any character except a newline (any at all with the s flag)
[A-Za-z]A letter
[a-z] / [A-Z]A lower-case / upper-case letter
\d or [0-9]A digit
\D or [^0-9]Anything but a digit
\w or [A-Za-z0-9_]A letter, digit or underscore
\WThe inverse of \w
\sWhitespace: space, tab, newline, carriage return
\SThe inverse of \s
\p{L} / \p{Nd}Any Unicode letter / decimal digit (needs the u flag)
\x41 / \u00E9A character by hex code, or by Unicode code point

␣ Whitespace

ExpressionMatches
A literal space
\tTab
\nNewline
\rCarriage return
\f \vForm feed, vertical tab
\sAny of the above

🎯 Character Sets

ExpressionMatches
[xyz]x, y or z
[^xyz]Anything except x, y, z
[1-3]1, 2 or 3
[^1-3]Anything except 1, 2, 3
[a-z0-9_]Ranges and single characters can be mixed
  • A set is an or over single characters — [abc] matches one character, not the string abc.
  • ^ right after the opening [ negates the set.
  • Inside a set, most metacharacters lose their meaning: . is a literal period, + a literal plus.

🔒 Escaping

Outside a character set, these need a backslash to be taken literally:

| Escape | Character | Escape | Character | | ------ | -------------------------------------- | ------ | ------------------- | --------------- | | \. | Period | \( | Opening parenthesis | | \^ | Caret | \) | Closing parenthesis | | \$ | Dollar sign | \[ | Opening bracket | | \\ | | Pipe | \] | Closing bracket | | \\ | Backslash | \{ | Opening brace | | \/ | Forward slash (only in /…/ literals) | \} | Closing brace |

Inside a character set only \\ and \] always need escaping. A ^ needs it only immediately after [, and a - only between two other characters.

🔢 Quantifiers

ExpressionRepeats the preceding item
{2}Exactly twice
{2,}Two or more times
{2,7}Between two and seven times
*Zero or more
+One or more
?Zero or once
*? +? ?? {2,7}?The lazy form — match as few characters as possible
'<b>bold</b>'.match(/<.+>/)[0]; // '<b>bold</b>'  — greedy
'<b>bold</b>'.match(/<.+?>/)[0]; // '<b>'          — lazy

📍 Anchors & Boundaries

ExpressionMatches at
^Start of the string (start of a line with the m flag)
$End of the string (end of a line with the m flag)
\bA word boundary
\BAnywhere that is not a word boundary
\A \zStart / end of the string in PCRE, Python, Java — not in JavaScript

A word boundary sits between a \w and a \W (or the edge of the string), so \bcat\b matches cat in the cat sat but not in concatenate.

🔀 Alternation & Lookaround

ExpressionMatches
foo|barEither foo or bar
foo(?=bar)foo only when followed by bar
foo(?!bar)foo only when not followed by bar
(?<=bar)foofoo only when preceded by bar
(?<!bar)foofoo only when not preceded by bar

Lookaround is zero-width: it tests the surroundings without consuming them, so nothing it matches ends up in the result.

🎁 Groups & Backreferences

ExpressionMeaning
(foo)Capturing group — matches foo and remembers it
(?:foo)Non-capturing group — groups without capturing
(?<year>\d{4})Named capturing group
\1Backreference to the first group
\k<year>Backreference to a named group
// named groups make replacements readable
'2026-08-22'.replace(/(?<y>\d{4})-(?<m>\d{2})-(?<d>\d{2})/, '$<d>/$<m>/$<y>');
// '22/08/2026'

const { groups } = /(?<user>\w+)@(?<host>[\w.]+)/.exec('jane@example.com');
// groups.user === 'jane', groups.host === 'example.com'

🚩 Flags

FlagNameEffect
gglobalFind every match, not just the first
iignore caseCase-insensitive matching
mmultiline^ and $ match at line breaks
sdotAll. also matches newlines
uunicodeTreat the pattern as Unicode code points; enables \p{…}
ystickyMatch only from lastIndex, no scanning ahead
dindicesReport the start/end index of every group

🔁 Replacement Patterns

TokenInserts
$&The whole match
$`Everything before the match
$'Everything after the match
$1, $2Capture group 1, 2, …
$<name>A named capture group
$$A literal dollar sign

ℹ️ Other tools spell these differently: \1 in sed, \g<1> in Python, ${1} in Go.

🧪 Where the Groups Show Up (JavaScript)

'2026-08-22'.match(/\d+/g)              // ['2026', '08', '22'] — no groups with /g
[...'a1b2'.matchAll(/([a-z])(\d)/g)]    // every match, with its groups
/(\d+)/.exec('abc 42')                  // ['42', '42', index: 4, ...]
/\d/.test('abc')                        // false
'a1'.replace(/(\w)(\d)/, (m, a, b) => b + a)   // '1a'
'a, b;c'.split(/[,;]\s*/)               // ['a', 'b', 'c']

⚠️ Gotchas

  • . does not match newlines unless you set the s flag — a common surprise on multi-line input.
  • A /g regex is stateful. Reusing the same object across test() calls advances lastIndex and skips matches; build a fresh one, or reset lastIndex = 0.
  • Nested quantifiers backtrack catastrophically. (a+)+$ against a long non-matching string can hang the process — avoid overlapping repetition, prefer possessive/atomic groups where the flavour has them.
  • Escape user input before putting it in a pattern; in JS, RegExp.escape() where available, otherwise s.replace(/[.*+?^${}()|[\]\\]/g, '\\$&').
  • Don’t parse HTML with regex. Use a parser; regex cannot handle nesting.
  • Backslashes double up in strings: new RegExp('\\d+') is the same pattern as /\d+/.

📚 Resources

  • MDN — regular expressions
  • regex101 — build and explain patterns
  • RegExplained
  • Regular-Expressions.info