using System;
using System.Text.RegularExpressions;
public class Example
{
public static void Main()
{
string pattern = @"\[[+-]?([048]|\d*([02468][048]|[13579][26]))\]";
string input = @"""[+05620]"" // 5620 is divisible by 4 (valid)
""[+05621]"" // 5621 is not divisible by 4 (invalid)
""[-55622]"" // -55622 is not divisible by 4 (invalid)
""[005623]"" // 5623 invalid
""[005624]"" // 5624 valid
""[-05628]"" // valid
""[005632]"" // valid
""[555636]"" // valid
""[+05640]"" // valid
""[005600]"" // valid
""[8.04]"" // invalid
""[8.00]"" // valid
""[-0]""
""...may be [+002016] will be.""
""[+05621]"", ""[-55622]"",
""[005623]"", ""[~24]"", ""[8.04]"",
""No, [2014] isn't a multiple of 4...""
""[0]""
""[4]""
""[8]""
""[12]""
""[16]""
""[20]""
""[24]""
""[28]""
""[32]""
""[36]""
""[40]""
""[44]""
""[48]""
""[52]""
""[56]""
""[60]""
""[64]""
""[68]""
""[72]""
""[76]""
""[80]""
""[84]""
""[88]""
""[92]""
""[96]""
""[100]""
""[104]""
""[108]""
""[112]""
""[116]""
""[120]""
""[124]""
""[128]""
""[1]""
""[2]""
""[3]""
""[5]""
""[6]""
""[7]""
""[9]""
""[10]""
""[11]""
""[13]""
""[14]""
""[15]""
""[17]""
""[18]""
""[19]""
""[21]""
""[22]""
""[23]""
""[25]""
""[26]""
""[27]""
""[29]""
""[30]""
""[31]""
""[33]""
""[34]""
""[35]""
""[37]""
""[38]""
""[39]""
""[41]""
""[42]""
""[43]""
""[45]""
""[46]""
""[47]""
""[49]""
""[50]""
""[51]""
""[53]""
""[54]""
""[55]""
""[57]""
""[58]""
""[59]""
""[61]""
""[62]""
""[63]""
""[65]""
""[66]""
""[67]""
""[69]""
""[70]""
""[71]""
""[73]""
""[74]""
""[75]""
""[77]""
""[78]""
""[79]""
""[81]""
""[82]""
""[83]""
""[85]""
""[86]""
""[87]""
""[89]""
""[90]""
""[91]""
""[93]""
""[94]""
""[95]""
""[97]""
""[98]""
""[99]""
""[101]""
""[102]""
""[103]""
""[105]""
""[106]""
""[107]""
""[109]""
""[110]""
""[111]""
""[113]""
""[114]""
""[115]""
""[117]""
""[118]""
""[119]""
""[121]""
""[122]""
""[123]""
""[125]""
""[126]""
""[127]""
""[129]""
0
4
8
12
16
20
24
28
32
36
40
44
48
52
56
60
64
68
72
76
80
84
88
92
96
100
104
108
112
116
120
124
128
1
2
3
5
6
7
9
10
11
13
14
15
17
18
19
21
22
23
25
26
27
29
30
31
33
34
35
37
38
39
41
42
43
45
46
47
49
50
51
53
54
55
57
58
59
61
62
63
65
66
67
69
70
71
73
74
75
77
78
79
81
82
83
85
86
87
89
90
91
93
94
95
97
98
99
101
102
103
105
106
107
109
110
111
113
114
115
117
118
119
121
122
123
125
126
127
129";
RegexOptions options = RegexOptions.Multiline;
foreach (Match m in Regex.Matches(input, pattern, options))
{
Console.WriteLine("'{0}' found at index {1}.", m.Value, m.Index);
}
}
}
Please keep in mind that these code samples are automatically generated and are not guaranteed to work. If you find any syntax errors, feel free to submit a bug report. For a full regex reference for C#, please visit: https://msdn.microsoft.com/en-us/library/system.text.regularexpressions.regex(v=vs.110).aspx