regular expression

Üdvözlöm, Ön a regular expression szó jelentését keresi. A DICTIOUS-ban nem csak a regular expression szó összes szótári jelentését megtalálod, hanem megismerheted az etimológiáját, a jellemzőit és azt is, hogyan kell a regular expression szót egyes és többes számban mondani. Minden, amit a regular expression szóról tudni kell, itt található. A regular expression szó meghatározása segít abban, hogy pontosabban és helyesebben fogalmazz, amikor beszélsz vagy írsz. Aregular expression és más szavak definíciójának ismerete gazdagítja a szókincsedet, és több és jobb nyelvi forráshoz juttat.

Főnév

regular expression (tsz. regular expressions)

  1. (informatika) reguláris kifejezés

A reguláris kifejezés (angolul: regular expression, rövidítve regex vagy regexp) egy szövegmintázat leírására szolgáló formális eszköz, amelyet elsősorban karakterláncok keresésére, illesztésére, cseréjére és feldolgozására használnak. A reguláris kifejezéseket gyakran alkalmazzák programozásban, szövegszerkesztőkben, parancssorokban és adatfeldolgozás során.



Mire jó a reguláris kifejezés?

  • Adatok keresése (pl. email-címek, telefonszámok, IP-címek)
  • Adatok validálása (pl. jelszabályok ellenőrzése)
  • Tömeges cserék szövegekben
  • Szövegparszolás (HTML, logfájlok, forráskód)
  • Adattisztítás, formátumjavítás



Alapfogalmak

A reguláris kifejezés egy speciális karakterlánc, amely egy vagy több mintát definiál.

Egyszerű példák:

  • "cat" – pontosan a “cat” szóval egyezik meg.
  • "c.t" – egyezik “cat”, “cut”, “c9t”, stb. szavakkal (a . tetszőleges karakter).
  • "a*b" – 0 vagy több “a” betű, majd “b” (pl. “b”, “ab”, “aaab”).



Alap szintaxis és jelentés

Kifejezés Jelentés Példa
. Bármely egyetlen karakter c.t → “cat”
* 0 vagy több ismétlés a* → ““,”aaa”
+ 1 vagy több ismétlés a+ → “a”, “aa”
? 0 vagy 1 ismétlés a? → ““,”a”
Bármely karakter a zárójelben → magánhangzó
Bármely karakter, kivéve ami a zárójelben van → nem szám
( ) Csoportosítás (részminta) (abc)+
` ` Vagy kapcsolat `foo bar`
^ Sor eleje ^A → “A-val kezdődik”
$ Sor vége end$ → “end-re végződik”
\ Escape karakter (pl. \. jelentése: pont) \. → “.”



Speciális karakterosztályok

Rövidítés Jelentés Egyenértékű
\d Számjegy (digit)
\D Nem számjegy
\w Szókarakter (betű, szám, _)
\W Nem szókarakter
\s Fehér karakter (szóköz, tab, új sor)
\S Nem fehér karakter



Gyakoribb minták

Cél Regex példa Mit illeszt?
Email-cím \b+@+\.\w{2,}\b [email protected]
Telefonszám (HU) \+36 ?\d{1} ?\d{3} ?\d{3} +36 30 123 456
Irányítószám (4 számjegy) \b\d{4}\b 1051
Dátum (YYYY-MM-DD) \d{4}-\d{2}-\d{2} 2025-05-16
HTML címkék <+> <div>, <img src="...">



Használat programozási nyelvekben

Python

import re

text = "E-mail: [email protected]"
match = re.search(r"\w+@\w+\.\w+", text)
if match:
    print("Találat:", match.group())

JavaScript

let text = "Tel: +36 20 123 4567";
let regex = /\+36\s?\d{1,2}\s?\d{3}\s?\d{3}/;
let match = text.match(regex);
console.log(match ? match : "Nincs találat");

Bash (grep)

grep -E '^.*$' szoveg.txt

Ez megkeresi azokat a sorokat, amelyek nagybetűvel kezdődnek és mondatzáró írásjellel végződnek.



Regex motorok és szabványok

A különböző környezetek eltérhetnek:

  • POSIX vs Perl-stílusú regex
  • Python, JavaScript, Java, C#, grep, sed, awk – mind támogatják, de lehetnek eltérések.



Tipikus hibák és figyelmeztetések

  • Túl bonyolult regex → nehezen olvasható, hibára hajlamos.
  • Nem kezelt szélsőségek → pl. túl hosszú egyezések (greedy matching).
  • Escape hiánya. helyett \. kell, ha tényleg pontot keresel.
  • Túl sok zárójel → csoportosítás helytelenül.



Greedy vs Lazy illesztés

Típus Jelentés Példa Illesztés
Greedy A lehető leghosszabb illesztés <.*> <html><body>
Lazy (nem mohó) A lehető legrövidebb illesztés <.*?> <html>



Regex alternatívák

  • Parser-ek: bonyolultabb szintaxis elemzésre (pl. HTML-hez nem ideális a regex).
  • Strukturált adatformátumok: XML, JSON → ezekre jobb a DOM vagy JSON parser.
  • Regex könyvtárak: regex101.com (tanuláshoz), PyParsing, ANTLR.



Összegzés

A reguláris kifejezés egy rendkívül hatékony és tömör eszköz szöveges minták keresésére, ellenőrzésére és manipulálására. Megtanulása némi gyakorlást igényel, de elsajátítása után szinte bármilyen adatfeldolgozási feladatra alkalmazható: legyen szó naplófájlok elemzéséről, weboldalak szűréséről vagy adattisztításról.