<table>
  <tr>
    <td><a href="https://regex.sorokin.engineer/">English</a></td>
    <td><a href="https://regex.sorokin.engineer/ru/">Русский</a></td>
    <td><a href="https://regex.sorokin.engineer/de/">Deutsch</a></td>
    <td>Български</td>
    <td><a href="https://regex.sorokin.engineer/fr/">Français</a></td>
    <td><a href="https://regex.sorokin.engineer/es/">Español</a></td>
  </tr>
</table>

# Въведение

Библиотеката TRegExpr реализира [регулярни изрази](regular_expressions.md).

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

Те са особено полезни за валидиране на потребителски вход във формуляри - за валидиране на електронни адреси и т.н.

Също така можете да извлечете телефонни номера, пощенски кодове и др. от уеб страници или документи, да търсите сложни модели в лог файлове и всичко, което можете да си представите. Правилата (шаблоните) могат да бъдат променяни без да е необходимо да прекомпилирате вашата програма.

TRegExpr е реализирана изцяло на Pascal. Включена е в [Lazarus (Free Pascal)](http://wiki.freepascal.org/Regexpr): [пакет](https://github.com/fpc/FPCSource/tree/main/packages/regexpr). Но съществува и като отделна библиотека и може да бъде компилирана с Delphi 2-7, Borland C++ Builder 3-6.

[Как библиотеката беше посрещната](https://sorokin.engineer/posts/en/regexpstudio_site_is_lunched.html).

# Бърз старт

За да използвате библиотеката, просто добавете [изходния код](https://github.com/andgineer/TRegExpr/blob/master/src/regexpr.pas) към вашия проект и използвайте класа [TRegExpr](tregexpr.md).

В [често задаваните въпроси (FAQ)](faq.md) можете да научите за проблемите на други потребители.

Готовата за използване Windows приложение [REStudio](https://github.com/andgineer/TRegExpr/releases/download/0.952b/restudio.zip) ще ви помогне да научите и отстраните грешки в регулярните изрази.

Ако видите някакви проблеми, моля [създайте бъг](https://github.com/andgineer/TRegExpr/issues).

# Преводи

Документацията е преведена на [английски](https://regex.sorokin.engineer/) и [руски](https://regexpr.sorokin.engineer/ru/).

Има незавършени преводи на няколко други езика. Ако искате да помогнете да ги довършите, [свържете се с мен](https://github.com/andgineer).

# Благодарности

Много функции бяха предложени и много грешки бяха открити (и дори поправени) от допринасящите към TRegExpr.

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

- [Алексей Торгашин](https://github.com/Alexey-T) - основен сътрудник от 2019 г., например
- именувани групи, групи без захващане, твърдения, обратно търсене и много други
- Гуидо Мюлвиц - откри и поправи грозен бъг при обработката на големи низове
- Стефан Климек - тестване в C++Builder и предлагане/имплементиране на много функции
- Стив Мъдфорд - имплементирал параметъра Offset
- Мартин Баур ([www.mindpower.com](http://www.mindpower.com)) - германски превод, полезни предложения
- Юрий Финкел - имплементирал поддръжка на Unicode, открил и поправил някои грешки
- Ралф Юнкер - имплементирал някои функции, много предложения за оптимизация
- Симеон Лилов - български превод
- Филип Йирсак и Матю Уинтър - помощ при имплементирането на неалчния режим
- Кит Ийсън - много примери за секцията за помощ при въведението
- Юрген Шрьот - лов на бъгове и полезни предложения
- Мартин Леду - френски превод
- Диего Калп, Аржентина - испански превод
