Списък на регулярните изрази

note

За пълен списък на поддържаните метазнаци и синтаксис вижте документацията за регулярни изрази на ICU (на английски).


Терм

Представяне/употреба

Произволен знак

Дадения знак, освен ако е метазнак на регулярните изрази. Списъкът на метазнаците следва в тази таблица.

.

Произволен единичен знак с изключение на знак за нов ред или нов абзац. Например изразът за търсене „ша.ка“ ще съвпадне както с „шапка“, така и с „шарка“.

^

Начало на абзац или клетка. Специалните обекти в началото на абзаца, например празни полета или рамки, закотвени като знаци, се пренебрегват. Пример: „^Петър“ съответства на думата „Петър“ само когато е първата дума от абзац.

$

Край на абзац или клетка. Специалните обекти в края на абзаца, например празни полета или рамки, закотвени като знаци, се пренебрегват. Пример: „Петър$“ съответства на думата „Петър“ само когато е последната дума от абзац; забележете, че след нея не трябва да има точка.

$ сам по себе си съвпада с края на абзац. По този начин могат да се търсят и заменят знаци за нов абзац.

*

Нула или повече съвпадения на терма непосредствено преди звездичката. Например с „Аб*в“ ще намерите „Ав“, „Абв“, „Аббв“, „Абббв“ и т.н.

+

Едно или повече съвпадения на терма непосредствено преди плюса. Например с „AБ.+4“ ще намерите „AБб4“, но не и „АБ4“.

Винаги се намира най-дългият възможен низ в даден абзац, който съвпада с този регулярен израз. Ако абзацът съдържа низа „AБ 4 AБ4“, ще бъде маркиран целият откъс.

?

Нула или повече съвпадения на терма непосредствено преди въпросителната. Например „Текста?“ съвпада с „Текст“ и „Текста“, а „x(ab|c)?y“ – с „xy“, „xaby“ или „xcy“.

\

Специалният знак, който следва, се тълкува като обикновен знак вместо като метазнак (изключения са комбинациите „\n“, „\t“, „\b“, „\>“ и „\<“). Например „три\.“ съвпада с „три.“, но не и с „трик“ или „трия“.

\n

Когато е въведен в полето Търсене, означава търсене на знак за нов ред, вмъкнат с клавишната комбинация Shift+Enter в Writer или Ctrl+Enter в клетка на Calc.

Когато е въведен в текстовото поле Замяна в Writer, вмъква знак за нов абзац, който може да бъде въведен с клавиша Enter или Return. В Calc няма специално значение и се интерпретира буквално.

За да заместите знаците за нов ред със знаци за нов абзац в Writer, въведете \n и в двете полета Търсене и Замяна, след което извършете търсене и замяна.

\t

Знак за табулация. Може да се използва и в полето Замяна.

\b

Граница на дума. Например „\bздрав“ съвпада със „здравей“ и „здрав“, но не и с „поздрав“, а „здрав\b“ съвпада с „поздрав“ и „здрав“, но не и със „здравей“.

Обърнете внимание, че тази форма замества остарелите (макар все още поддържани засега) форми „\>“ (съвпада с края на дума) и „\<“ (съвпада с началото на дума).

^$

Търсене на празен абзац.

^.

Търсене на първия знак от абзац.

& или $0

Когато извършвате замяна, добавя низа, намерен според критериите за търсене от полето Търсене, към израза в полетоЗамяна.

Например, ако въведете „прозорец“ в полето Търсене и „рамка на &“ в полето Замяна, думата „прозорец“ ще бъде заменена с „рамка на прозорец“.

Също така, можете да въведете „&“ в полето Замяна, за да промените атрибутите или формата (бутон Атрибути или Формат) на низа, намерен според критериите за търсене.

[...]

Единично срещане на кой да е от знаците между квадратните скоби. Например: „[абв123]“ съвпада със знаците „а“, „б“, „в“, „1“, „2“ и „3“. „[а-е]“ съвпада с единични срещания на знаците от „а“ до „е“ включително (при задаване на диапазона знакът с най-малък код в Уникод трябва да е първи). „[а-еи-ш]“ отговаря на единично срещане на който и да е знак в интервалите от „а“ до „е“ и от „и“ до „ш“.

[^...]

Единично срещане на произволен знак, включително за табулация, интервал и нов ред, който не е в зададените диапазони от знаци. Например „[^а-сюя]“ съвпада с всички знаци освен тези в диапазона от „а“ до „с“ включително, „ю“ и „я“.

\uXXXX

\UXXXXXXXX

Знакът, представен от четирицифрения шестнадесетичен код от Уникод (XXXX).

Знакът, представен от осемцифрения шестнадесетичен код в Уникод (XXXXXXXX).

note

За определени символни шрифтове символът (глифът), който виждате на екрана, може да изглежда свързан с различен код от Уникод, а не действително използвания за него в шрифта. Кодовете в Уникод могат да бъдат преглеждани с Вмъкване - Специален знак или с клавишната комбинация за преобразуване на Уникод.


\N{ИМЕ НА ЗНАК ОТ УНИКОД}

Съвпадение с наименувания знак от Уникод.

Някои по-важни имена на знаци от Уникод са SPACE (интервал), NO-BREAK SPACE (твърд интервал), SOFT HYPHEN (меко тире), ACUTE ACCENT (остро ударение), CIRCUMFLEX ACCENT (циркумфлекс), GRAVE ACCENT (тежко ударение).

note

Имената на знаците от Уникод могат да се търсят и преглеждат с Вмъкване - Специален знак.


|

Инфиксен оператор, с който се отделят алтернативи. Съвпада с терма преди „|“ или с терма след „|“. Например „това|онова“ съвпада със срещания както на „това“, така и на „онова“.

{N}

Постфиксен оператор за повторение, който указва, че за да се отчете съвпадение, трябва регулярният терм непосредствено преди него да се среща точен брой пъти („N“). Например „живе{2}“ съвпада с „живее“.

{N,M}

Постфиксен оператор за повторение, който указва допустим диапазон (минимум „N“, максимум „M“) за броя срещания на регулярния терм непосредствено преди него, така че да се отчете съвпадение. Например „чини{1,2}“ съвпада с „чини“ и „чинии“.

{N,}

Постфиксен оператор за повторение, който указва допустим диапазон (минимум „N“, без зададен максимум) за броя срещания на регулярния терм непосредствено преди него, така че да се отчете съвпадение. Например „да{2,}“ съвпада с „даа“, „дааа“ и „дааааа“.

(...)

Конструкция за групиране, която служи за три цели.

  1. Ограждане на набор от отделени с „|“ алтернативи. Например регулярният израз „к(ан|ол)а“ съвпада с „кана“ и с „кола“.

  2. Групиране на термове в сложен израз, за да се приложи върху тях постфиксен оператор като „*“, „+“, „?“ или някой от постфиксните оператори за повторение. Например регулярният израз „а(бв)?г“ съвпада с „аг“ и „абвг“, а „М(ис){2}ипи“ съвпада с „Мисисипи“.

  3. Обозначаване на съвпадащия подниз в скобите за по-късно използване. Конструкцията „\N“ се използва в полето Търсене , а „$N“ – в полето Замяна. N е цифра, обръщението към първото съвпадение се представя с „\1“ в полето Търсене и с „$1“ в полето Замяна, към второто – съответно с „\2“ и „$2“ и т.н.

Например регулярният израз „(890)xy\1z\1“ съвпада с „890xy890z890“.

С регулярния израз „(плод|дар)\b“ в полето „Търсене“ и регулярния израз „$1овит“ в полето „Замяна“ срещанията на думите „плод“ и „дар“ се заместват съответно с „плодовит“ и „даровит“. Бележка: „\b“ предотвратява съвпадение с „плодовете“ или „даровете“.

[:alpha:]

Представя буквен знак. Използвайте [:alpha:], за да намерите един такъв знак.

\d

[:digit:]

Представя десетична цифра. Използвайте [:digit:], за да намерите една цифра.

[:alnum:]

Представя буквено-цифров знак ([:alpha:] и [:digit:]).

\s

[:space:]

Представя знак за интервал (но не и останалите знаци за празнина).

[:print:]

Представя печатен знак.

[:cntrl:]

Представя непечатаем знак.

[:lower:]

Представя малка буква, ако в Настройки е отметнато Зачитане на регистъра.

[:upper:]

Представя главна буква, ако в Настройки е отметнато Зачитане на регистъра.


Термовете могат да се комбинират за изграждане на сложни и мощни регулярни изрази за търсене, както се вижда от примерите по-долу.

Примери

Израз

Значение

^$

Празен абзац.

^ указва, че съвпадението трябва да бъде в началото на абзац,

$ указва, че след съвпадащия низ трябва да следва знак за нов абзац или край на клетка.

^.

Първият знак от абзац.

^ указва, че съвпадението трябва да бъде в началото на абзац,

. замества произволен единичен знак.

e([:digit:])?

Съвпада с отделно „e“ или с „e“, последвано от една цифра.

e указва знака „e“,

[:digit:] указва произволна десетична цифра,

? указва нула или едно срещане на [:digit:].

^([:digit:])$

Съвпада с абзац или клетка, съдържаща точно една цифра.

^ указва, че съвпадението трябва да бъде в началото на абзац,

[:digit:] указва произволна десетична цифра,

$ указва, че след съвпадащия низ трябва да следва знак за нов абзац или край на клетка.

^[:digit:]{3}$

Съвпада само с абзац или клетка, съдържаща трицифрено число.

^ указва, че съвпадението трябва да бъде в началото на абзац,

[:digit:] указва произволна десетична цифра,

{3} указва, че [:digit:] трябва да се среща три пъти,

$ указва, че след съвпадащия низ трябва да следва знак за нов абзац или край на клетка.

\bконст(иту|рук)ция\b

Съвпада с думите „конституция“ и „конструкция“, но не и с „конституцията“.

\b указва, че съвпадението трябва да започва на границата на дума,

конст съответства на знаците „конст“,

( започва групата,

иту съответства на знаците „иту“,

| означава алтернатива,

рук съответства на знаците „рук“,

) завършва групата,

ция съответства на знаците „ция“,

\b указва, че съвпадението трябва да завършва на граница на дума.


Моля, подкрепете ни!