Regex Flashcards

Study Regex

1
Q

g

A

Global match — find all matches rather than only the first one

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

m

A

Multi-line match — tells the engine to treat the subject string as multiple lines. ^ and $ match next to \n instead of the start or end of the entire string

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

i

A

Ignore case — match both lower and upper case letters

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

.

A

Matches any single character except the newline character. Example: .at matches bat, cat, rat and also .at, 1atEquivalent to [^\x0A\x0D\u2028\u2029]

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

[^…]

A
The negated bracket expression or negated character class matches any single character not contained within the brackets or range of characters. Same as above, except that the ^ negates the expression. Example: [0-9] matches any character that's not a number.Although the ^ character is a special character, it doesn't need to be escaped within the brackets in order to be treated as a literal. Example: [^] matches anything, [^^] matches anything except the ^ character.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

\w

A

Word character| Equivalent to [A-Za-z0-9_]

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

\W

A

Non-word character| Equivalent to [^A-Za-z0-9_]

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

\d

A

Digit character| Equivalent to [0-9]

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

\D

A

Non-digit character| Equivalent to [^0-9]

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

\s

A

Whitespace characterEquivalent to [\f\n\r\t\v\u00A0\u2028\u2029] (\u00A0 means “no-break space”, \u2028 means “line separator”, \u2029 means “paragraph separator”)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

\S

A

Non-whitespace character| Equivalent to [^\f\n\r\t\v\u00A0\u2028\u2029]

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

\b

A

Word Boundary| Backspace (\x08)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

\f

A

Form-feed (\x0C)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

\n

A

Linefeed or newline (\x0A)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

\r

A

Carriage return (\x0D)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

\t

A

Tab (\x09)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

\v

A

Vertical tab (\x0B)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

\0

A

Null character (\x00)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
19
Q

\xhh

A

Character with hexadecimal code hh.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
20
Q

\uhhhh

A

Character with hexadecimal code hhhh.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
21
Q

[…]

A
The bracket expression specifies a character class and matches any single character contained within the brackets or range of characters. Example: [abc] matches a, b and/or c, in any order.A range of characters is specified using the -, for example [a-z] matches any lowercase ASCII letter from a to z. Other examples include [A-F] which matches any uppercase ASCII letter from A to F, and [4-7] which matches any number from 4 to 7. The - character is treated as a literal character if it's listed first, last or escaped: [-] matches -, [a-] matches a and/or -, [a\-z] matches a, - and/or z.Additionally, listed characters can be mixed with ranges of characters. Example: [0-9a-fA-F] matches any number and also letters from a to z irrespective of their case, [02468aeiouy-] matches even numbers, vowels and the - character.Brackets inside bracket expressions are treated as literals if they are escaped. Example: [\[\]] matches [ and/or ]. The [ doesn't need to be escaped if it's listed first: [[] matches [
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
22
Q

?

A

Match 0 or 1 times. Example: ab? matches a and ab

23
Q

+

A

Match 1 or more times. Example: ab+ matches ab, abb, abbb etc.

24
Q

{n}

A

Match exactly n times. Example: ab{2} matches abb

25
{n,}
Match n or more times. Example: ab{2,} matches abb, abbb, abbbb etc.
26
{n,m}
Match at least n times, but no more than m times. Example: ab{2,3} matches abb and abbb
27
??
Match 0 or 1 times, but as few times as possible. Example: ab?? against abbbbb matches a
28
*?
Match 0 or more times, but as few times as possible. Example: ab*? against abbbbb matches a
29
+?
Match 1 or more times, but as few times as possible. Example: ab+? against abbbbb matches ab
30
{n}?
Match n or more times, but as few times as possible. Example: ab{2}? against abbbbb matches abb
31
{n,m}?
Match at least n times, no more than m times, but as few times as possible. Example: ab{2,3}? against abbbbb matches abb
32
*
Match 0 or more times. Example: ab* matches a, ab, abb, abbb etc.
33
(...)
Capturing group - group subpattern and capture the match. Example: (foo)bar matches foobar and captures foo
34
...|...
Alternation operator - matches one of the alternative subppatterns. Example: foo|bar|baz matches either foo, bar or baz
35
(?:...)
Non-capturing group - group subpattern, but don't capture the match. Example: (?:foo)bar matches foobar and doesn't capture anything
36
Matches any single character except the newline character.
.
37
The bracket expression.
[...]
38
The negated bracket expression.
[^...]
39
Word character Equivalent to [A-Za-z0-9_]
\w
40
Non-word characterEquivalent to [^A-Za-Non-word characterEquivalent to [^A-Za-z0-9_]
\W
41
Digit characterEquivalent to [0-9]
\d
42
Non-digit characterEquivalent to [^0-9]
\D
43
Whitespace characterEquivalent to [\f\n\r\t\v\u00A0\u2028\u2029] (\u00A0 means "no-break space", \u2028 means "line separator", \u2029 means "paragraph separator")
\s
44
Non-whitespace characterEquivalent to [^\f\n\r\t\v\u00A0\u2028\u2029]
\S
45
Word Boundary| Backspace (\x08)
\b
46
Form-feed (\x0C)
\f
47
Linefeed or newline (\x0A)
\n
48
Carriage return (\x0D)
\r
49
Tab (\x09)
\t
50
Vertical tab (\x0B)
\v
51
Null character (\x00)
\0
52
Character with hexadecimal code hh.
\xhh
53
Character with hexadecimal code hhhh.
\uhhhh