| Regex Character | Description | 
|---|---|
| \ | Escapes the next character, marking it as a special character, a literal character, a backreference, or an octal escape. For example, "n" matches the character "n". "\n" matches a newline character. The string "\\" matches "\", while "\(" matches "(". | 
| ^ | Matches the beginning of the input string. If the Multiline property of the RegExp object is set, ^ also matches positions after "\n" or "\r". | 
| $ | Matches the end of the input string. If the Multiline property of the RegExp object is set, $ also matches positions before "\n" or "\r". | 
| * | Matches the preceding subexpression zero or more times. For example, "zo*" matches "z" and "zoo". * is equivalent to {0,}. | 
| + | Matches the preceding subexpression one or more times. For example, "zo+" matches "zo" and "zoo", but not "z". + is equivalent to {1,}. | 
| ? | Matches the preceding subexpression zero or one time. For example, "do(es)?" can match "does" or "do" in "does". ? is equivalent to {0,1}. | 
| {n} | n is a non-negative integer. Matches exactly n times. For example, "o{2}" cannot match the "o" in "Bob", but can match the two o's in "food". | 
| {n,} | n is a non-negative integer. Matches at least n times. For example, "o{2,}" cannot match the "o" in "Bob", but can match all o's in "foooood". "o{1,}" is equivalent to "o+". "o{0,}" is equivalent to "o*". | 
| {n,m} | m and n are non-negative integers, with n ≤ m. Matches at least n times and at most m times. For example, "o{1,3}" will match the first three o's in "fooooood". "o{0,1}" is equivalent to "o?". Note that there should be no space between the comma and the two numbers. | 
| ? | When this character follows any other quantifier (*, +, ?, {n}, {n,}, {n,m}), the matching mode is non-greedy. Non-greedy mode matches as few characters as possible, while the default greedy mode matches as many as possible. For example, for the string "oooo", "o+?" matches a single "o", while "o+" matches all "o" characters. | 
| . | Matches any single character except for "\n". To match any character including "\n", use a pattern like "(.|\n)". | 
| (pattern) | Matches pattern and captures this match. The captured match can be obtained from the resulting Matches collection, using the SubMatches collection in VBScript and the $0…$9 properties in JScript. To match parentheses characters, use "\(" or "\)". | 
| (?:pattern) | Matches pattern but does not capture the match, meaning it is a non-capturing match and will not be stored for later use. This is useful when using the alternation operator "(|)" to combine different parts of a pattern. For example, "industr(?:y|ies)" is a more concise expression than "industry|industries". | 
| (?=pattern) | Positive lookahead, matches the search string at the start of any string that matches pattern. This is a non-capturing match, meaning this match does not need to be stored for later use. For example, "Windows(?=95|98|NT|2000)" matches "Windows" in "Windows2000", but not "Windows" in "Windows3.1". Lookaheads do not consume characters, meaning that after a match occurs, the next search for a match begins immediately after the last match, not from the character that contains the lookahead. | 
| (?!pattern) | Negative lookahead, matches the search string at the start of any string that does not match pattern. This is a non-capturing match, meaning this match does not need to be stored for later use. For example, "Windows(?!95|98|NT|2000)" matches "Windows" in "Windows3.1", but not "Windows" in "Windows2000". Lookaheads do not consume characters, meaning that after a match occurs, the next search for a match begins immediately after the last match, not from the character that contains the lookahead. | 
| (?<=pattern) | Positive lookbehind, similar to positive lookahead but in the opposite direction. For example, "(?<=95|98|NT|2000)Windows" matches "Windows" in "2000Windows", but not in "3.1Windows". | 
| (?<!pattern) | Negative lookbehind, similar to negative lookahead but in the opposite direction. For example, "(?<!95|98|NT|2000)Windows" matches "Windows" in "3.1Windows", but not in "2000Windows". | 
| x|y | Matches x or y. For example, "z|food" matches "z" or "food". "(z|f)ood" matches "zood" or "food". | 
| [xyz] | Character set. Matches any one of the included characters. For example, "[abc]" matches "a", "b", or "c". | 
| [^xyz] | Negated character set. Matches any character not included in the brackets. For example, "[^abc]" matches any character except "a", "b", or "c". | 
| [a-z] | Character range. Matches any character in the specified range. For example, "[a-z]" matches any lowercase letter. You can also combine ranges, such as "[a-zA-Z]". | 
| \b | Matches a word boundary, which is the position between a word character (as defined by the regex engine) and a non-word character. For example, "\bword\b" matches "word" but not "worded". | 
| \B | Matches a position that is not a word boundary. For example, "\Bword\B" matches "worded" but not "word". | 
| \n | Matches the newline character. Different platforms may use different characters for newlines, such as "\r\n" or "\r". | 
| \t | Matches the tab character. | 
| \v | Matches a vertical tab. | 
| \f | Matches a form feed character. | 
| \r | Matches a carriage return character. | 
| \s | Matches any whitespace character, including space, tab, vertical tab, newline, and carriage return characters. It is equivalent to the character class "[ \t\n\x0B\f\r]". | 
| \S | Matches any non-whitespace character. It is equivalent to the negated character class "[\s]". | 
| \d | Matches any digit character, equivalent to the character class "[0-9]". | 
| \D | Matches any non-digit character, equivalent to the negated character class "[\d]". | 
| \w | Matches any word character (a-z, A-Z, 0-9, or underscore), equivalent to the character class "[a-zA-Z0-9_]". | 
| \W | Matches any non-word character, equivalent to the negated character class "[\w]". | 
| Username | /^[a-z0-9_-]{3,16}$/ | 
|---|---|
| Password | /^[a-z0-9_-]{6,18}$/ | 
| Password 2 | (?=^.{8,}$)(?=.*\d)(?=.*\W+)(?=.*[A-Z])(?=.*[a-z])(?!.*\n).*$ (Must contain digits, uppercase letters, lowercase letters, and punctuation, at least 8 characters) | 
| Hexadecimal Value | /^#?([a-f0-9]{6}|[a-f0-9]{3})$/ | 
| /^([a-z0-9_\.-]+)@([\da-z\.-]+)\.([a-z\.]{2,6})$/ /^[a-z\d]+(\.[a-z\d]+)*@([\da-z](-[\da-z])?)+(\.{1,2}[a-z]+)+$/ or \w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*  | |
| URL | /^(https?:\/\/)?([\da-z\.-]+)\.([a-z\.]{2,6})([\/\w \.-]*)*\/?$/ or [a-zA-z]+://[^\s]* | 
| IP Address | /((2[0-4]\d|25[0-5]|[01]?\d\d?)\.){3}(2[0-4]\d|25[0-5]|[01]?\d\d?) /^(?:(?: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]?)$/ or ((2[0-4]\d|25[0-5]|[01]?\d\d?)\.){3}(2[0-4]\d|25[0-5]|[01]?\d\d?)  | 
| HTML Tag | /^<([a-z]+)([^<]+)*(?:>(.*)<\/\1>|\s+\/>)$/ or <(.*)(.*)>.*<\/\1>|<(.*) \/> | 
| Remove Code\\Comments | (?<!http:|\S)//.*$ | 
| Match Double-byte Characters (including Chinese) | [^\x00-\xff] | 
| Chinese Characters | [\u4e00-\u9fa5] | 
| Range of Chinese Characters in Unicode | /^[\u2E80-\u9FFF]+$/ | 
| Chinese and Full-width Punctuation Characters | [\u3000-\u301e\ufe10-\ufe19\ufe30-\ufe44\ufe50-\ufe6b\uff01-\uffee] | 
| Date (YYYY-MM-DD) | (\d{4}|\d{2})-((0?([1-9]))|(1[1|2]))-((0?[1-9])|([12]([1-9]))|(3[0|1])) | 
| Date (MM/DD/YYYY) | ((0?[1-9]{1})|(1[1|2]))/(0?[1-9]|([12][1-9])|(3[0|1]))/(\d{4}|\d{2}) | 
| Time (HH:MM, 24-hour format) | ((1|0?)[0-9]|2[0-3]):([0-5][0-9]) | 
| Landline Phone Number in Mainland China | (\d{4}-|\d{3}-)?(\d{8}|\d{7}) | 
| Mobile Phone Number in Mainland China | 1\d{10} | 
| Postal Code in Mainland China | [1-9]\d{5} | 
| ID Number in Mainland China (15 or 18 digits) | \d{15}(\d\d[0-9xX])? | 
| Non-negative Integer (positive integer or zero) | \d+ | 
| Positive Integer | [0-9]*[1-9][0-9]* | 
| Negative Integer | -[0-9]*[1-9][0-9]* | 
| Integer | -?\d+ | 
| Decimal | (-?\d+)(\.\d+)? | 
| Blank Line | \n\s*\r or \n\n (editplus) or ^[\s\S ]*\n  | 
| QQ Number | [1-9]\d{4,} | 
| Words that do not contain 'abc' | \b((?!abc)\w)+\b | 
| Match Leading and Trailing Whitespace Characters | ^\s*|\s*$ | 
| Common Editing | Below are some replacements for special Chinese characters (editplus)  ^[0-9].*\n   ^[^第].*\n   ^[习题].*\n  ^[\s\S ]*\n   ^[0-9]*\.   ^[\s\S ]*\n   <p[^<>*]>  href="javascript:if\(confirm\('(.*?)'\)\)window\.location='(.*?)'"  <span style=".[^"]*rgb\(255,255,255\)">.[^<>]*</span>  <DIV class=xs0>[\s\S]*?</DIV>  | 
The regular expression syntax is a quick reference for commonly used regex patterns, syntax inquiries, and provides basic grammar, subexpression syntax, modifiers, greedy and non-greedy modes, allowing for efficient control over strings.