A reguláris kifejezések (regex) hatékony minták szöveg keresésére, illesztésére és kinyerésére. Programozásban, adatellenőrzésben, keresés-csere műveletekben és naplóelemzésben alkalmazzák őket. A kihívás az, hogy a regex szintaxisát nehéz pontosan megírni. Az ingyenes Regex Tesztelő valós időben lehetővé teszi a kísérletezést, hogy pontosan lásd, mit illeszt a mintád.
Amire szükséged van
- Egy tesztelni kívánt minta, vagy egy megoldandó szövegillesztési feladat
- Webböngésző (Chrome, Firefox, Safari vagy Edge)
- Nincs szükség fiókra vagy telepítésre
Lépésről lépésre útmutató
Nyisd meg a Regex Tesztelőt
Menj a Regex Tesztelő eszközhöz. Két fő területet fogsz látni: egyet a reguláris kifejezésednek, egyet a tesztelni kívánt szövegnek.
Írd meg a regex mintát
Add meg a reguláris kifejezést a minta mezőbe. Kezdj egyszerűen, és fokozatosan növeld a bonyolultságot. Például kezdj egy szó szerinti szóval, mint hello, amely pontosan ezt a szöveget illeszti, majd finomítsd a mintát speciális karakterekkel a szélesebb illesztésekhez.
Add meg a tesztszöveget
Illeszd be vagy írd be a mintaszöveget a tesztterületre. Adj hozzá olyan példákat is, amelyeknek illeszkedniük kell, és olyanokat, amelyeknek nem. Az eszköz valós időben emeli ki az összes egyezést, ahogy gépelsz, így azonnal láthatod, hogy a mintád helyesen működik-e.
Finomítás és ellenőrzés
Módosítsd a mintádat, és figyeld, hogyan frissülnek az egyezések azonnal. Adj hozzá szélsőértékeket a tesztszövegedhez — szokatlan bemenetek, határfeltételek és trükkös formátumok —, hogy megbizonyosodj arról, a regex megfelelően kezeli őket. Ha elégedett vagy, másold a mintát a kódodba vagy eszközödbe.
Hasznos tudnivaló A Regex Tesztelő teljes egészében a böngésződben fut. Semmilyen adat nem kerül szerverre, így biztonságosan tesztelhetőek a minták érzékeny szövegek, például e-mail címek, naplófájlok vagy személyes adatok ellen.
Alapvető regex szintaxis
| Szimbólum | Jelentése | Példa |
|---|---|---|
. |
Bármely egyedi karakter | h.t illeszti: "hat", "hit", "hot" |
* |
Az előző nullája vagy több | ab*c illeszti: "ac", "abc", "abbc" |
+ |
Az előző egy vagy több | ab+c illeszti: "abc", "abbc", de nem "ac" |
? |
Az előző nulla vagy egy | colou?r illeszti: "color" és "colour" |
\d |
Bármely számjegy (0-9) | \d{3} illeszti: "123", "456" |
\w |
Bármely szókarakter | \w+ illeszti: "hello", "test123" |
\s |
Bármely szóköz | hello\sworld illeszti: "hello world" |
^ |
Karakterlánc eleje | ^Hello illeszti: "Hello world" |
$ |
Karakterlánc vége | world$ illeszti: "Hello world" |
[abc] |
A halmazban lévő bármely karakter | [aeiou] illeszti az összes magánhangzót |
(...) |
Rögzítő csoport | (ab)+ illeszti: "ab", "abab" |
Kipróbálható általános minták
Másold be ezeket a mintákat a Regex Tesztelőbe, és kísérletezz velük.
E-mail cím
[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}
Illeszti a szabványos e-mail formátumokat, például felhasznalo@pelda.hu és elso.utolso@ceg.co.uk. Teszteld érvényes és érvénytelen e-mail formátumokkal, hogy lásd, hogyan kezeli a szélsőértékeket.
URL
https?://[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}(/[^\s]*)?
Illeszti a HTTP és HTTPS URL-eket, például https://pelda.hu és http://oldal.org/ut/oldal. Az s? választhatóvá teszi az „s" betűt a „https"-ben.
Telefonszám (magyar formátum)
(\+36[-.\s]?)?[0-9]{2}[-.\s]?[0-9]{3}[-.\s]?[0-9]{4}
Illeszti a különböző telefonszám-formátumokat: 06 20 123 4567, +36-30-123-4567 és hasonló változatokat.
Tipp Regex felépítésekor kezd a legegyszerűbb mintával, amely illeszti a célszöveget, majd add hozzá a korlátokat egyenként. Egyszerre megpróbálni egy bonyolult regex-t megírni sokkal nehezebb, mint fokozatosan felépíteni, miközben valós időben figyeled az egyezések frissülését.
Általános hibák és elkerülésük
Speciális karakterek elfelejtése escape-elni. A karaktereknek, mint ., *, +, ?, (, ), [, ], {, } speciális jelentésük van a regex-ben. Ahhoz, hogy szó szerint illesszenek, add hozzájuk a visszaperjelet: \. egy pontot illeszt, \( egy zárójelet.
Túlzott mohóság. Alapértelmezés szerint a * és + a lehető legtöbb szöveget illesztik. Ha a legrövidebb illesztést szeretnéd, adj hozzá ?-t utánuk: .*? a lehető legkevesebbet illeszti.
A minta nem horgonyzása. ^ és $ nélkül egy minta, mint \d{3}, három egymást követő számjegyet illeszt bárhol a karakterláncban, beleértve a hosszabb számokban is. Használj horgonyokat, ha az egész karakterláncot kell illesztened.
Fontos A regex szintaxis kismértékben eltér a különböző programozási nyelvek és eszközök között. Egy JavaScriptben működő minta eltérően viselkedhet Pythonban vagy PHP-ban. Mindig teszteld a végső mintádat abban a nyelvben vagy környezetben, ahol használni fogod.
Gyakran ismételt kérdések
Mik a regex jelzők?
A jelzők módosítják, hogyan alkalmazzák a mintát. Általános jelzők: g (globális — az összes egyezést keresi, nem csak az elsőt), i (kis- és nagybetű érzéketlen), és m (többsoros — a ^ és $ sor határokat illeszt, nem csak karakterlánc határokat). A Regex Tesztelő lehetővé teszi ezek be/ki kapcsolását.
Használhatom a regex-et keresés és csere esetén?
Igen. A legtöbb szövegszerkesztő és programozási nyelv támogatja a regex-alapú keresést és cserét. A rögzítő csoportok (...) lehetővé teszik, hogy az illesztett szövegre hivatkozz a csere karakterláncban.
Hogyan illeszthetek több sorban?
Használd az s (dotall) jelzőt, hogy a . az újsorkaraktereket is illessze, vagy használd a [\s\S]-t platformfüggetlen alternatívaként, amely bármely karaktert illeszt, beleértve az újsorokat.
Következő lépések
Most, hogy tudod felépíteni és tesztelni a regex mintákat, próbáld alkalmazni őket a kódodban, szövegszerkesztődben vagy parancssori eszközeiben. Más fejlesztői segédeszközökért nézd meg a Cron Értelmezőt az ütemezési kifejezésekhez, vagy a JSON Formázót strukturált adatokkal való munkához.