Regular Expression

A regular expression (or "regex") is a search pattern used for matching one or more characters within a string. It can match specific characters, wildcards, and ranges of characters. Regular expressions were originally used by Unix utilities, such as vi and grep. However, they are now supported by many code editing applications and word processors on multiple platforms. Regular expressions can also be used in most major programming languages.

A regular expression can be as simple as a basic string, such as "app". The regex "app" would match strings containing the words "apps," "applications," and "inapplicable". A regular expression may also contain anchor characters ("^" and "$") which are used to specify the beginning and end of a line, respectively. Therefore, the regex "^apps" would match the string, "apps are great," but would not match the string, "I like apps."

Regular expressions can include dashes, which are used to match a range of characters, such as all lowercase letters. For example, the regex "[a-z]" would match "apps," but would not match the strings "Apps" or "123". The regex "[A-Za-z]" would match "Apps" and "[0-9]" would match "123". A period, which is the standard wildcard character in regular expressions, can be used to match any character (except an end-of-line character). A period followed by an asterisk (.*) matches zero or more instances, while a period followed by a plus (.+) matches one or more instances.

So what happens if you need to match a string containing a dash, asterisk, plus, or an anchor character? These characters can be included in a regular expression pattern by "escaping" them with a backslash ("\"). For example, to search for "$0.99", the regex would look like "\$0\.99". Backslashes are also used to search for non-printable characters. For example, "\r" matches a carriage return, "\n" matches a new line, and "\t" matches a tab character.

While it does not take much effort to create a basic regular expression, writing an advanced regex is not an easy task. Even the best programmers rarely get complex regular expressions right the first time. When used correctly, however, regular expressions are a powerful tool for searching, finding, and replacing specific text.

Updated August 19, 2013 by Per C.

quizTest Your Knowledge

Which of the following letters is not used as a hexadecimal number?

A
A
0%
B
F
0%
C
X
0%
D
E
0%
Correct! Incorrect!     View the Hexadecimal definition.
More Quizzes →

The Tech Terms Computer Dictionary

The definition of Regular Expression on this page is an original definition written by the TechTerms.com team. If you would like to reference this page or cite this definition, please use the green citation links above.

The goal of TechTerms.com is to explain computer terminology in a way that is easy to understand. We strive for simplicity and accuracy with every definition we publish. If you have feedback about this definition or would like to suggest a new technical term, please contact us.

Sign up for the free TechTerms Newsletter

How often would you like to receive an email?

You can unsubscribe or change your frequency setting at any time using the links available in each email.

Questions? Please contact us.