Skip to content
English Русский Deutsch Български Français Español


TRegExpr library implements regular expressions.

Regular expressions are easy to use and powerful tool for sophisticated search and substitution and for template based text check.

It is especially useful for user input validation in input forms - to validate e-mail addresses and so on.

Also you can extract phone numbers, ZIP-codes etc from web-pages or documents, search for complex patterns in log files and all you can imagine. Rules (templates) can be changed without your program recompilation.

TRegExpr is implemented in pure Pascal. It's included into Lazarus (Free Pascal): package. But also it exists as separate library and can be compiled by Delphi 2-7, Borland C++ Builder 3-6.

How good the library was met.

Quick start

To use the library just add the sources to you project and use the class TRegExpr.

In the FAQ you can learn from others users problems.

Ready to run Windows application REStudio will help you learn and debug regular expressions.

If you see any problems, please create the bug.


The documentation has been translated into English and Russian.

There are incomplete translations into several other languages. If you want to help complete them, contact me.


Many features suggested and a lot of bugs founded (and even fixed) by TRegExpr’s contributors.

I cannot list here all of them, but I do appreciate all bug-reports, features suggestions and questions that I am receiving from you.

  • Alexey Torgashin - main contributor since 2019, e.g.
  • named groups, non-capturing groups, assertions, backward search and much more
  • Guido Muehlwitz - found and fixed ugly bug in big string processing
  • Stephan Klimek - testing in C++Builder and suggesting/implementing many features
  • Steve Mudford - implemented Offset parameter
  • Martin Baur ( -German translation, usefull suggestions
  • Yury Finkel - implemented Unicode support, found and fixed some bugs
  • Ralf Junker - implemented some features, many optimization suggestions
  • Simeon Lilov - Bulgarian translation
  • Filip Jirsбk and Matthew Winter - help in implementation non-greedy mode
  • Kit Eason - many examples for introduction help section
  • Juergen Schroth - bug hunting and useful suggestions
  • Martin Ledoux - French translation
  • Diego Calp, Argentina - Spanish translation