Рэгулярныя выразы (або, часам, рэгвыры), якія ўжываюцца ў пошуках і правілах сэгмэнтаваньня, гэта выразы, якія падтрымліваюцца Java. Калі патрабуюцца больш спэцыфічныя зьвесткі, зьвяртайцеся да “Java Regex documentation”. Дадатковыя спасылкі і прыклады гл. ніжэй.
Гэты разьдзел — для дасьведчаных карыстальнікаў, якім патрабуецца вызначаць уласныя варыянты правілаў сэгмэнтаваньня або ўжываць у пошуках складаныя выразы.
Table D.1. Рэгулярны выраз — сьцягі.
| Канструктыўны элемэнт | … адпавядае наступнаму | 
|---|---|
| (?i) | Ня ўлічваць рэгістар пры падборы адпаведнікаў (па змаўчаньні шаблён улічвае рэгістар). | 
Table D.2. Рэгулярны выраз — сымбаль
| Канструктыўны элемэнт | … адпавядае наступнаму | 
|---|---|
| x | Сымбаль x, за выключэньнем наступнага… | 
| \uhhhh | Сымбаль з шаснаццатковым значэньнем 0xhhhh | 
| \t | Сымбаль табуляцыі ('\u0009') | 
| \n | Сымбаль новага радка ('\u000A') | 
| \r | Сымбаль вяртаньня карэткі ('\u000D') | 
| \f | Сымбаль падачы блянка ('\u000C') | 
| \a | Сымбаль “званок” ('\u0007') | 
| \e | Сымбаль кіроўнай пасьлядоўнасьці ('\u001B') | 
| \cx | Кіроўны сымбаль, адпаведны x | 
| \0n | Сымбаль з васьмічным значэньнем 0n (0 <= n <= 7) | 
| \0nn | Сымбаль з васьмічным значэньнем 0nn (0 <= n <= 7) | 
| \0mnn | Сымбаль з васьмічным значэньнем 0mnn (0 <= m <= 3, 0 <= n <= 7) | 
| \xhh | Сымбаль з шаснаццатковым значэньнем 0xhh | 
Table D.3. Рэгулярны выраз — цытаваньне
| Канструктыўны элемэнт | … адпавядае наступнаму | 
|---|---|
| \ | Нічога, проста азначае наступны сымбаль. Гэта патрабуецца, каб увесьці літаральна адзін з мэта-сымбаляў !$()*+.<>?[\]^{|}. | 
| \\ | Напрыклад, гэта — сымбаль зваротнай косай рысы. | 
| \Q | Нічога, проста азначае ўсе сымбалі да \E. | 
| \E | Нічога, проста азначае канец цытаваньня, пачатага з \Q. | 
Table D.4. Рэгулярны выраз — Клясы для блёкаў і катэгорыя Unicode
| Канструктыўны элемэнт | … адпавядае наступнаму | 
|---|---|
| \p{InGreek} | Сымбаль з грэцкага блёку (просты блёк) | 
| \p{Lu} | Сымбаль у верхнім рэгістры (простая катэгорыя) | 
| \p{Sc} | Сымбаль валюты | 
| \P{InGreek} | Які заўгодна сымбаль ня з грэцкага блёку (адмаўленьне) | 
| [\p{L}&&[^\p{Lu}]] | Якая заўгодна літара ня ў верхнім рэгістры (адыманьне) | 
Table D.5. Рэгулярны выраз — Клясы сымбаляў
| Канструктыўны элемэнт | … адпавядае наступнаму | 
|---|---|
| [abc] | a, b або c (просты кляс) | 
| [^abc] | Які заўгодна сымбаль апроч a, b або c (адмаўленьне) | 
| [a-zA-Z] | Ад a да z або ад A да Z уключна (дыяпазон) | 
Table D.6. Рэгулярны выраз — Вызначаныя клясы сымбаляў
| Канструктыўны элемэнт | … адпавядае наступнаму | 
|---|---|
| . | Які заўгодна сымбаль (апроч канцоў радкоў) | 
| \d | Лічба: [0-9] | 
| \D | Ня лічба: [^0-9] | 
| \s | Прабельны сымбаль: [ \t\n\x0B\f\r] | 
| \S | Непрабельны сымбаль: [^\s] | 
| \w | Сымбаль у слове: [a-zA-Z_0-9] | 
| \W | Сымбаль ня ў слове: [^\w] | 
Table D.7. Рэгулярны выраз — Вызначальнікі межаў
| Канструктыўны элемэнт | … адпавядае наступнаму | 
|---|---|
| ^ | Пачатак радка | 
| $ | Канец радка | 
| \b | Мяжа слова | 
| \B | Мяжа няслова | 
Table D.8. Рэгулярны выраз — Прагныя квантары
| Канструктыўны элемэнт | … адпавядае наступнаму | 
|---|---|
| X? | X, адзін раз або ніколі | 
| X* | X, нуль або некалькі разоў | 
| X+ | X, адзін або некалькі разоў | 
прагныя квантары адпавядаюць як мага большай пасьлядоўнасьці. Напрыклад, для a+ будзе адпаведнікам aaa у aaabbb
Table D.9. Рэгулярны выраз — Няпрагныя квантары
| Канструктыўны элемэнт | … адпавядае наступнаму | 
|---|---|
| X?? | X, адзін раз або ніколі | 
| X*? | X, нуль або некалькі разоў | 
| X+? | X, адзін або некалькі разоў | 
няпрагныя квантары адпавядаюць як мага меншай пасьлядоўнасьці. Напрыклад, для a+? будзе адпаведнікам першае a у пасьлядоўнасьці aaabbb
Table D.10. Рэгулярны выраз — Лягічныя апэратары
| Канструктыўны элемэнт | … адпавядае наступнаму | 
|---|---|
| XY | X з Y за ім | 
| X|Y | Або X, або Y | 
| (XY) | XY як адзіная група | 
Для тэставаньня рэгулярных выразаў можна скарыстацца з шэрагу інтэрактыўных інструмэнтаў. Яны звычайна працуюць аднолькавым чынам (для прыкладу ўзяты Regular Expression Tester, гл. ніжэй): з рэгулярным выразам (верхні элемэнт) аналізуецца шуканы тэкст (тэкставае поле ў сярэдзіне), знаходзяцца нейкія адпаведнікі, вынікі паказваюцца ў полі выніковага тэксту.
Вэрсіі аўтаномнага інструмэнта для Windows, Linux, FreeBSD: гл. The Regex Coach. Гэта амаль тое самае, што і ў прыкладзе вышэй.
Добры збор карысных прыкладаў рэгулярных выразаў можна ўзяць з самой OmegaT (гл. Налады → Сэгмэнтаваньне). Наступны сьпіс уключае выразы, карысныя для пошукаў у памяці перакладаў:
Table D.11. Regex — Прыклады рэгулярных выразаў у перакладах
| Рэгулярны выраз | Знойдзецца наступнае: | 
|---|---|
| (\b\w+\b)\s\1\b | паўтор словаў | 
| [\.,]\s*[\.,]+ | коска або кропка, затым прабелы і яшчэ адна коска або кропка | 
| \. \s+$ | лішнія прабелы пасьля кропкі ў канцы радка | 
| \s+a\s+[aeiou] | Для ангельскай мовы: перад словамі, якія пачынаюцца з галосных, звычайна павінна стаяць “an”, а ня “a” | 
| \s+an\s+[^aeiou] | Для ангельскай мовы: праверка, падобная на апісаную вышэй, але для зычных (“a”, а ня “an”) | 
| \s{2,} | адзін або некалькі прабелаў | 
| \.[A-Z] | Кропка, за ёй літара ў верхнім рэгістры — магчыма, прапушчаны прабел паміж кропкай і пачаткам новага сказу? | 
| \bis\b | пошук “is”, але ня “this” або “isn't” і да г. п. |