Reguláris kifejezések

A keresésekben és a szövegdarabolásban használatos reguláris kifejezések megegyeznek a Java által támogatottakkal. További információkat talál itt: http://java.sun.com/j2se/1.5/docs/api/java/util/regex/Pattern.html. További hivatkozásokat és példákat talál alább. 

Beállítás

Karakterek

Idézőkarakter

Unikódos blokkok és kategóriák osztályai

Karakterosztályok

Sajátos jelentésű karakterek

Határolók

Tág kvantorok

Szűk kvantorok

Logikai operátorok

Eszközök és példák a reguláris kifejezések használatához

    

 


Kifejezés

Jelentése


Beállítás

(?i)

Kikapcsolja a nagy- és kisbetűk közötti különbségtételt (alaphelyzetben a minta érzékeny a kis-/nagybetűkre).


Karakterek

x

Az x karakter, kivéve az alábbiakat...

\uhhhh

A hexadecimális 0xhhhh karakter

\t

A tabulátor ('\u0009')

\n

Az új sor (soremelés) ('\u000A')

\r

A kocsivissza ('\u000D')

\f

A lapemelés ('\u000C')

\a

A jelző (csengő) karakter ('\u0007')

\e

A váltókarakter ('\u001B')

\cx

Az x-nek megfelelő vezérlőkarakter

\0n

Az oktális 0n (0 <= n <= 7) értékű karakter

\0nn

Az oktális 0nn (0 <= n <= 7) értékű karakter

\0mnn

Az oktális 0mnn (0 <= m <= 3, 0 <= n <= 7) értékű karakter

\xhh

A hexadecimális 0xhh értékű karakter


Idézőkarakter

\

Semmi, mindössze eredeti jelentésében idézi a következő karaktert. Erre akkor van szükség, ha a !$()*+.<>?[\]^{|} metakarakterekre önmagukban szeretne rákeresni.

\\

Ezzel kereshet magára a vissza perjelre.

\Q

Minden karaktert idéz az \E-ig.

\E

Lezárja a \Q-val megkezdett idézést


Unikódos blokkok és kategóriák osztályai

\p{InGreek}

Egy karakter a görög blokkon belül (egyszerű blokk)

\p{Lu}

Nagybetű (egyszerű kategória)

\p{Sc}

Pénznemjel

[?] \p{InGreek}

Bármely karakter a görög blokk kivételével (tagadás)

[\p{L}&&[^\p{Lu}]]

Bármely nem nagybetűs betű (kivonás)


Karakterosztályok

[abc]

a a, b, or c alkotta osztály (egyszerű osztály)

[^abc]

A a, b vagy c kivételével bármely karakter (tagadás)

[a-zA-Z]

Az a-tól z-ig vagy A -tól Z-ig (tartomány)


Sajátos jelentésű karakterek

.

Bármely karakter (kivéve a sort lezárókat)

\d

Számjegy: [0-9]

\D

Nem számjegy: [^0-9]

\s

Nem nyomtatott karakter: [ \t\n\x0B\f\r]

\S

Nyomtatott karakter: [^\s]

\w

Szó: [a-zA-Z_0-9]

\W

Nem szó: [^\w]


Határolók

^

Sor eleje

$

Sor vége

\b

Szóhatár

\B

Nem szóhatár


Tág kvantorok

A lehető legtágabb egyezéssel keresnek. Például az a+ megtalálja az aaa-t az aaabbb-ben

X?

X nulla vagy egy előfordulása

X*

X nulla vagy több előfordulása

X+

X legalább egy előfordulása


Szűk kvantorok

A lehető legszűkebb egyezéssel keresnek. Például az a+? az a első előfordulását találja meg az aaabbb-ben

X?

X nulla vagy egy előfordulása

X*?

X nulla vagy több előfordulása

X+?

X legalább egy előfordulása


Logikai operátorok

XY

X, utána Y

X|Y

Vagy X, vagy Y

(XY)

XY egyetlen csoportként



Eszközök és példák a reguláris kifejezések használatához


Reguláris kifejezések kidolgozására és ellenőrzésére számos interaktív eszköz érhető el. Ezek mindegyike nagyjából hasonlóképpen működik (lásd az alábbi példát a FireFoxhoz való, reguláris kifejezések ellenőrzésére szolgáló segédprogram példája alapján): a reguláris kifejezés (felső bejegyzés) elemzi a keresés szövegét (középső szövegdoboz) , majd az eredményt tartalmazó szövegdobozban közli a találatokat.

Segédprogram FireFoxhoz a reguláris kifejezések ellenőrzésére

Lásd a Windows,Linux, Mac, FreeBSD környezetben használatos önálló Regex Coach eszközt, amely alapvetően azonos a fenti példában látottal.

Maga az OmegaT is komoly példatárat közöl a reguláris kifejezések használatát illetően (lásd: Beállítások > Szövegdarabolás...). Az alábbi felsorolásban olyan kifejezések láthatók, amelyek hasznosak lehetnek a fordítási memóriában való kereséshez:

Reguláris kifejezés Mire keres rá:
(\b\w+\b)\s\1\b
szóismétlődés 
[\.,]\s*[\.,]+ vesszők és pontok vegyesen
\. \s$ fölös szóközök a sorvégi pont után
\s+a\s+[aeiou]  angol esetén: magánhangzóval kezdődő szavak előtt "an" állhat az "a" helyett
\s+an\s+[^aeiou]  angol esetén: a fenti ellenőrzés fordítottja mássalhangzókra ("an" helyett "a")
\s\s+ egynél több szóköz
\.[A-Z] pont és új mondat kezdete között hiányzó szóköz



Jogi tudnivalók Kezdőoldal Tartalomjegyzék