I made a simplifyed version of RES, making everything clearer to operate with single-line moderations only though. Anyway check it out and vote for it, so everyone does not have to ask questions "how-to-do-this-help", and can write his needed code himself(/herself)
All characters are literals except [ . ] [ | ] [ * ] [ ? ] [ + ] [ ( ] [ ) ] [ { ] [ } ] [ [ ] [ ] ] [ ^ ] [ $ ].
These characters are literals when preceded by a [ \ ].
[MATCHING] - use [x] to match:
[ ^ ] - [starting from the start of a line]
[ $ ] - [starting from the end of a line]
[ [abc] ] - [every character of [ a ], [ b ], and [ c ] (bigger or smaller combinations also possible)]
[ [^abc] ] - [any character other than [ a ], [ b ], or [ c ] (bigger or smaller combinations also possible)]
[ [a-z] ] - [any character in the range [ a ] to [ z ]]
[ [^A-Z] ] - [any character other than in the range [ a ] to [ z ]]
[ . ] - [any single character]
[ \w ] - [any word character from all alphanumeric characters plus the underscore]
[ \s ] - [any whitespace character]
[ \d ] - [any digit]
[ \l ] - [any lower case character]
[ \u ] - [Any upper case character]
[ \W ] - [non-word character]
[ \S ] - [non-whitespace character]
[ \D ] - [non-digit]
[ \L ] - [non-lower case character]
[ \U ] - [non-upper case character]
[ \b ] - [a word boundary (the start or end of a word)]
[ \B ] - [any line location only when not at a word boundary]
[REPEATS] - after matching a literal, add [x], when it's repeated:
[ * ] - [any number of times including zero]
[ + ] - [any number of times, but at least once]
[ ? ] - [zero or one times only]
[ {n} ] - [exactly n times]
[ {n,} ] - [at least n times with no upper limit]
[ {n,m} ] - [between n and m times]
You are free to copy paste it, remaster or anything else. We all just have to come up with a good RES Guide.