Regex
Syntax
This section is under construction. |
Metacharacters Defined || Metacharacter Examples MChar || Definition || Pattern || Sample Matches ^ Start of a string. || ^abc || abc, abcdefg, abc123, ... $ End of a string. || abc$ || abc, endsinabc, 123abc, ... . Any character (except \n newline) || a.c || abc, aac, acc, adc, aec, ... | Alternation. {...} Explicit quantifier notation. [...] Explicit set of characters to match. (...) Logical grouping of part of an expression.
- 0 or more of previous expression.
+ 1 or more of previous expression. ? 0 or 1 of previous expression; also forces minimal matching when an expression might match several strings within a search string. \ Preceding one of the above, it makes it a literal instead of a special character. Preceding a special matching character, see below.
bill|ted ted, bill
ab{2}c abbc
a[bB]c abc, aBc
(abc){2} abcabc
ab*c ac, abc, abbc, abbbc, ...
ab+c abc, abbc, abbbc, ...
ab?c ac, abc
a\sc a c
Symbol | Function |
---|---|
[\^$.|?*+() | Special characters any other will match themselves |
\ | Escapes special characters and treat as literal |
* | Repeat the previous item zero or more times |
. | Single character except line break characters |
.* | Match zero or more characters |
^ | Match at the start of a line/string |
$ | Match at the end of a line/string |
.$ | Match a single character at the end of line/string |
^ $ | Match line with a single space |
[^A-Z] | Match any line beginning with any char from A to Z |
Examples
- For IP Addresses:
1. To Match upto 999.999.999.999:
\b\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\b
OR shortened with a quantifier to:
\b(?:\d{1,3}\.){3}\d{1,3}\b
2. To match exactly upto 255.255.255.255:
\b(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\b
OR shortened with a quantifier to:
\b(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\b
- For Credit Card numbers:
1. Visa card numbers start with a 4. New cards have 16 digits. Old cards have 13:
^4[0-9]{12}(?:[0-9]{3})?$
2. MasterCard numbers start with the numbers 51 through 55. All have 16 digits:
^5[1-5][0-9]{14}$
{{#widget:DISQUS |id=networkm |uniqid=Regex |url=https://aman.awiki.org/wiki/Regex }}