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

Introduction

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) project. But also it exists as separate library and can be compiled by Delphi 2-7, Borland C++ Builder 3-6.

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.

Feedback

If you see any problems, please create the bug.

Translations

The documentation is available in English and Russian.

There are also old translations to German, Bulgarian, French and Spanish. If you want to help to update this old translations please contact me.

New translations are based on GetText and can be edited with transifex.com.

They are already machine-translated and need only proof-reading and may be some copy-pasting from old translations.

Gratitude

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.

  • Guido Muehlwitz - found and fixed ugly bug in big string processing
  • Stephan Klimek - testing in CPPB and suggesting/implementing many features
  • Steve Mudford - implemented Offset parameter
  • Martin Baur (www.mindpower.com) - 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