Tester regex
Despre acest instrument
Rulează expresii regulate pe textul de intrare și inspectează potrivirile. Totul rulează în browserul tău; nu se trimite nicio dată nicăieri.
Rulează testul
—
Cum se utilizează
- Introduceți expresia regulată și flag-urile.
- Apăsați „Rulează testul” pentru a evidenția potrivirile din textul de intrare.
Exemple (șabloane regex gata de folosit pe categorii, peste 100)
Bazele / spații albe / linii
- Doar linie goală:
^\s*$(m) - Spațiu alb la început:
^\s+(m) - Spațiu alb la final:
\s+$(m) - Elimină spațiile albe de la început/sfârșit:
^\s+|\s+$(m) - Spații consecutive (reduce la unul singur):
\s{2,} - Caractere vizibile (non spațiu):
\S+ - Numai ASCII:
^[\x00-\x7F]+$ - ASCII imprimabil:
^[\x20-\x7E]+$ - Conține non-ASCII:
[^\x00-\x7F] - Delimitator de cuvânt:
\bword\b
Numere / monedă
- Întreg (semn opțional):
^-?\d+$ - Zecimal (semn opțional):
^-?\d*\.\d+$ - Număr (întreg sau zecimal):
^-?(?:\d+|\d*\.\d+)$ - Separat pe mii (ex., 1,234,567):
^\d{1,3}(?:,\d{3})+$ - Valută (¥ sau $ cu grupare opțională):
^(?:¥|\$)\s?\d{1,3}(?:,\d{3})*(?:\.\d{2})?$ - Procent:
^\d{1,3}(?:\.\d+)?% - Notație științifică:
^[+-]?(?:\d+\.?\d*|\.\d+)[eE][+-]?\d+$ - Hexazecimal:
^(?:0x)?[0-9A-Fa-f]+$ - Binar:
^[01]+$ - Octal:
^[0-7]+$
Date / timp
- Dată YYYY-MM-DD (doar format):
^\d{4}-\d{2}-\d{2}$ - Ora HH:MM (24h):
^(?:[01]\d|2[0-3]):[0-5]\d$ - Ora HH:MM:SS (24h):
^(?:[01]\d|2[0-3]):[0-5]\d:[0-5]\d$ - Data și ora ISO8601 (simplificat):
^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(?:\.\d+)?Z$ - An/lună (YYYY/MM):
^\d{4}/(0[1-9]|1[0-2])$ - Eră japoneză (Reiwa, simplificat):
^令和\d+年(?:\d+月(?:\d+日)?)?$(u) - Zi a săptămânii (engleză, 3 litere):
^(Mon|Tue|Wed|Thu|Fri|Sat|Sun)$ - Fus orar (±HH:MM):
^[+-](?:[01]\d|2[0-3]):[0-5]\d$
Contacte / adrese (rapid)
- Cod poștal japonez:
^\d{3}-\d{4}$ - Telefon Japonia (format simplu 0x-xxxx-xxxx):
^0\d{1,4}-\d{1,4}-\d{4}$ - Telefon internațional (+cod de țară, cu spații):
^\+\d{1,3}\s?\d+(?:[\s-]\d+)*$ - Nume de prefecturi japoneze:
^(?:東京都|北海道|(?:京都|大阪)府|.+県)$(u) - Email (verificare rapidă uzuală):
^[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,}$ - Nume de utilizator (3–16 litere/cifre/_):
^[A-Za-z0-9_]{3,16}$ - Parolă puternică (majuscule/minuscule/cifră/simbol, lungime ≥ 8):
^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)(?=.*[\W_]).{8,}$
Web / URL / HTTP
- URL (verificare rapidă http/https):
https?:\/\/\S+ - Domeniu (simplu, fără Punycode):
^(?:[A-Za-z0-9-]+\.)+[A-Za-z]{2,}$ - Gazdă cu subdomenii:
^(?:[A-Za-z0-9-]+\.)*[A-Za-z0-9-]+\.[A-Za-z]{2,}$ - Parametru de interogare cheie=valoare:
[?&]([A-Za-z0-9._~-]+)=([^&#]+) - Fragment:
#\w[\w-]* - Extensie de fișier (.png|.jpg|.gif etc.):
\.(?:png|jpe?g|gif|webp|svg)$(i) - Metode HTTP:
^(GET|POST|PUT|PATCH|DELETE|HEAD|OPTIONS)$ - Linie de antet HTTP:
^[A-Za-z0-9-]+:\s?.+$(m) - Antet Basic auth:
^Basic\s+[A-Za-z0-9+/=]+$ - Antet token Bearer:
^Bearer\s+[A-Za-z0-9\-\._~\+\/]+=*$
Rețea (IP/MAC/CIDR/UUID/JWT etc.)
- IPv4 (0–255 strict):
\b(?:(?:25[0-5]|2[0-4]\d|[01]?\d?\d)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d?\d)\b - IPv6 (acceptă comprimare, simplificat):
\b(?:[A-Fa-f0-9]{1,4}:){2,7}[A-Fa-f0-9]{1,4}\b - Adresă MAC (separată cu :):
^(?:[0-9A-Fa-f]{2}:){5}[0-9A-Fa-f]{2}$ - Adresă MAC (separată cu -):
^(?:[0-9A-Fa-f]{2}-){5}[0-9A-Fa-f]{2}$ - CIDR (IPv4 lungime 0–32):
^\b(?:\d{1,3}\.){3}\d{1,3}\/(?:[0-9]|[12]\d|3[0-2])\b$ - UUID v4:
^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$(i) - GUID (insensibil la majuscule/minuscule):
^{?[0-9A-F]{8}-[0-9A-F]{4}-[0-9A-F]{4}-[0-9A-F]{4}-[0-9A-F]{12}}?$(i) - Base64 (cu padding):
^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$ - JWT (trei segmente separate prin punct):
^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+$ - Cheie publică SSH (ssh-rsa/ed25519):
^ssh-(?:rsa|ed25519)\s+[A-Za-z0-9+/=]+(?:\s.+)?$
Fișiere / căi / versiuni
- Cale absolută Windows:
^[A-Za-z]:\\(?:[^\\/:*?"<>|\r\n]+\\)*[^\\/:*?"<>|\r\n]*$ - Cale absolută UNIX:
^\/(?:[^\/\0]+\/)*[^\/\0]*$ - Nume de fișier sigur (doar litere/cifre ._-):
^[A-Za-z0-9._-]+$ - Captează extensia fișierului:
\.([A-Za-z0-9]+)$ - Hash Git (7–40 caractere):
^[0-9a-f]{7,40}$ - SemVer:
^\d+\.\d+\.\d+(?:-[0-9A-Za-z.-]+)?(?:\+[0-9A-Za-z.-]+)?$ - Imagine Docker:tag:
^[a-z0-9]+(?:[._-][a-z0-9]+)*(?::[\w.-]+)?$ - Nume pachet NPM (simplu):
^(?:@[\w-]+\/)?[\w.-]+$ - Slug de URL:
^[a-z0-9]+(?:-[a-z0-9]+)*$
Front-end web (HTML/CSS/culori)
- Etichetă HTML (pereche start/stop, simplă):
<([A-Za-z][A-Za-z0-9]*)\b[^>]*>([\s\S]*?)<\/\1> - Comentariu HTML:
<!--[\s\S]*?--> - Valoare atribut href:
href\s*=\s*"(.*?)"(i) - Culoare CSS (#RGB/#RRGGBB):
^#(?:[0-9A-Fa-f]{3}){1,2}$ - CSS rgb():
^rgb\(\s*(?:[01]?\d?\d|2[0-4]\d|25[0-5])\s*,\s*(?:[01]?\d?\d|2[0-4]\d|25[0-5])\s*,\s*(?:[01]?\d?\d|2[0-4]\d|25[0-5])\s*\)$ - CSS hsl():
^hsl\(\s*(?:\d|[1-2]\d{2}|3[0-5]\d)\s*,\s*(?:\d|[1-9]\d)%\s*,\s*(?:\d|[1-9]\d)%\s*\)$ - Unitate CSS (px, em, etc.):
^-?\d+(?:\.\d+)?(?:px|em|rem|vh|vw|%)$
Șiruri / sintaxă (fragmente de cod)
- Identificator JavaScript (simplu):
^[A-Za-z_$][A-Za-z0-9_$]*$ - Linie de comentariu JavaScript //:
^\s*\/\/.*$(m) - Comentariu bloc JavaScript:
\/\*[\s\S]*?\*\/ - Șir între ghilimele duble (gestionare simplă a escape-urilor):
"(?:[^"\\]|\\.)*" - Șir între ghilimele simple:
'(?:[^'\\]|\\.)*' - Template literal (simplificat):
`(?:[^`\\]|\\.|\\${[^}]*})*` - Cheie JSON:
"([A-Za-z0-9_]+)"\s*: - Celulă CSV (gestionează ghilimelele duble):
(?:"(?:[^"]|"")*"|[^,\r\n]*) - Extrage URL-uri din corpul e-mailului:
https?:\/\/[^\s)>"]+
Securitate / validare (folosiți cu grijă)
- Card de credit (fără Luhn, verificare rapidă):
\b(?:\d[ -]*?){13,19}\b - VISA (începe cu 4, 13/16/19 cifre):
\b4\d{12}(?:\d{3})?(?:\d{3})?\b - Mastercard (51–55 / 2221–2720):
\b(?:5[1-5]\d{14}|2(?:2[2-9]\d{2}|[3-6]\d{3}|7[01]\d{2}|720\d{2})\d{10})\b - MyNumber Japonia (doar format, fără checksum):
^\d{12}$ - Cod poștal + linie adresă (simplu):
^\d{3}-\d{4}\s+.+$ - Detectare etichetă <script> XSS (simplu):
<\s*script\b[^>]*>[\s\S]*?<\s*\/\s*script\s*> - Cuvinte cheie SQL (verificare rapidă):
\b(SELECT|INSERT|UPDATE|DELETE|DROP|ALTER|CREATE)\b(i)
Notă: Confirmați politicile legale și interne înainte de a utiliza aceste șabloane pe date personale sau confidențiale.
Formate de log
- Apache/Nginx CLF (simplu):
^(\S+)\s+(\S+)\s+(\S+)\s+\[([^\]]+)\]\s+"([^"]+)"\s+(\d{3})\s+(\d+|-) - Marcaj temporal ISO8601:
\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(?:\.\d+)?(?:Z|[+-]\d{2}:\d{2}) - Linie JSON (un JSON pe linie):
^\{.*\}$(m) - Capturare UUID:
[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}(i) - Extrage IPv4 (simplu):
\b(?:\d{1,3}\.){3}\d{1,3}\b
Markdown
- Titluri (#–######):
^(#{1,6})\s+(.+)$(m) - Legătură:
\[([^\]]+)\]\(([^)]+)\) - Imagine:
!\[([^\]]*)\]\(([^)]+)\) - Cod inline:
`([^`]+)` - Bloc de cod (```…``` simplu):
```[\s\S]*?``` - Listă cu marcatori (- * +):
^\s*[-*+]\s+.+$(m) - Citat >:
^\s*>\s+.+$(m)
Scrieri japoneze / clase de caractere (folosiți indicatorul Unicode)
- Doar hiragana:
^[\u3041-\u3096]+$(u) - Doar katakana:
^[\u30A1-\u30FA\u30FC]+$(u) - Doar katakana cu jumătate de lățime:
^[\uFF66-\uFF9D\uFF70]+$(u) - Conține kanji:
[\u4E00-\u9FFF](u) - Doar caractere full-width:
^[^\x00-\x7F]+$ - Alfanumerice full-width:
^[\uFF10-\uFF19\uFF21-\uFF3A\uFF41-\uFF5A]+$(u) - Cod poștal (acceptă cifre full-width):
^[0-9\d]{3}-[0-9\d]{4}$(u) - Furigana (kana full-width):
^[\u30A1-\u30FA\u30FC\s]+$(u)
Formatare text / utilitare de extragere
- Elimină numerotarea de început „1.”:
^\s*\d+\.\s*(m) - Înlătură prefixele marcatorilor:
^\s*(?:[-*+]|•|\d+\.)\s*(m) - Capturează conținutul din paranteze:
\(([^)]*)\) - Capturează conținutul dintre ghilimele duble:
"([^"\\]|\\.)*" - Extrage yen japonez „¥123,456”:
¥\s?\d{1,3}(?:,\d{3})* - Extrage domeniul e-mailului:
@([A-Za-z0-9.-]+\.[A-Za-z]{2,}) - Elimină etichetele HTML (simplu):
<[^>]+> - Redu spațiile repetate:
\s{2,}
Alte șabloane utile
- Număr de înmatriculare japonez (foarte simplu):
^[\u3041-\u3096\u30A1-\u30FA\u4E00-\u9FFF]{1,2}\s?\d{3,4}$(u) - ID video YouTube:
(?<=v=|youtu\.be\/)[A-Za-z0-9_-]{11} - Utilizator Twitter/X @handle:
@[A-Za-z0-9_]{1,15} - Canal Slack:
#[a-z0-9_-]{1,80} - Nume de culori (cuvinte cheie CSS exemplu):
\b(?:red|green|blue|black|white|gray|silver|maroon)\b(i) - Anotări între paranteze 〔…〕:
[([^]]*)]|【([^】]*)】|〔([^〕]*)〕(u) - Detectează kana cu jumătate de lățime:
[\uFF61-\uFF9F](u) - Cuvânt englezesc (permite cratimă):
\b[A-Za-z]+(?:-[A-Za-z]+)*\b - Număr de comandă în e-mail (ex., #12345):
#\d{4,} - Nume de stații japoneze (se termină cu „駅”):
.+駅\b(u)
Notă: Aceste șabloane sunt gândite să fie practice și gata de lipit. Pentru validări stricte (ani bisecți, IDN-uri, parsare HTML completă etc.), utilizați logică sau biblioteci specializate.