Regex: Difference between revisions
m (1 revision imported) |
m (Protected "Regex" ([Edit=Allow only logged in users] (indefinite) [Move=Allow only logged in users] (indefinite) [Delete=Allow only logged in users] (indefinite))) |
||
(No difference)
|
Revision as of 19:16, 25 August 2016
Syntax
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 }}