Regex: Difference between revisions
→Samples
(14 intermediate revisions by the same user not shown) | |||
Line 6:
== Metacharacters ==
{| class="wikitable" style="width:80%"
|-
!colspan=2|
|-
! MChar !! Definition !! style="width:15%"|Pattern !!style="width:25%"| Sample Matches
|-
| ^ || Start of a string. || ^abc || abc, abcdefg, abc123, ...
Line 30:
| + || 1 or more of previous expression. || ab+c || abc, abbc, abbbc, ...
|-
| ? || 0 or 1 of previous expression; also forces minimal matching when an expression might <br />match several strings within a search string. || ab?c || ac, abc
|-
| \ || Preceding one of the above, it makes it a literal instead of a special character. <br />Preceding a special matching character, see below. || a\sc || a c
|}
Line 104:
{| class="wikitable"
|-
!style="width:25%"| Symbol !!style="width:65%"| Function
|-
| <nowiki>[\^$.|?*+()</nowiki> || Special characters any other will match themselves
Line 129:
=Examples=
==Samples==
*For IP Addresses:▼
1. To Match upto 999.999.999.999:▼
*;Matching specific value from output
Source: [https://pythex.org pythex.org]:
%Cpu(s): 0.3 us, 0.1 sy, 0.0 ni, '''99.3 id''', 0.2 wa, 0.0 hi, 0.0 si, 0.1 st
%Cpu(s): 0.0 us, 0.0 sy, 0.0 ni,'''100.0 id''', 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
%Cpu(s): 0.0 us, 0.0 sy, 0.0 ni,'''1.0 id''', 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
Regex:
([0-9]{3}.[0-9]|[0-9]{2}.[0-9]|[0-9].[0-9])(?=\sid)
Explanation:
[0-9]{3} => 3 digits
| => OR
[0-9]{2} => 2 digits
. => any character (Dot here)
(?=\sid) => select non-greedy output before 'id'
? => non-greedy
\s => Space
id => 'id' character
\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
<pre style="width: 97%; overflow-x: scroll;">
\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
Line 141 ⟶ 161:
\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
^4[0-9]{12}(?:[0-9]{3})?$
^5[1-5][0-9]{14}$
== Misc Examples ==
* Match 2 characters/numbers only:
^[0-9a-zA-Z]{2}$
* Simple URL Verification:
(http|https):\/\/([a-z])\w+\.(com|net|org)
<br/>
|