### 常用 ``` [abc] - 单个字符: a 或 b 或 c [^abc] - a, b, c 以外的单个字符 [a-zA-Z0-9] - 字符范围: 字母或数字 . - 任意字符 \s - 空字符 \S - 非空字符 \d - 数字字符 \D - 非数字字符 \w - 单词(字母,数字,下划线) \W - 非单词 \b - 单词边界 \B - 非单词边界 ^ - 开头 $ - 结尾 (a|b) - a 或 b a* - 重复 0 次或多次 a? - 重复 0 次或 1 次 a+ - 重复 1 次或多次 a{3} - 重复 3 次 a{3,} - 重复 3 次或多次 a{3,5} - 重复 3 到 5 次 ? - 非贪婪匹配 (...) - 分组 (?:a) - 非捕获分组 a(?=b) - 正向断言 a(?!b) - 正向否定断言 (?<=b)a - 反向断言 (?a) - 命名分组 \k - 命名反向引用 \n - 反向引用,n 为 99 以内的十进制数字 \xhh - 十六进制 hh 字符 \uhhhh - 十六进制 hhhh 字符 \u{hhhh} - (设置了 u 标志时) 十六进制 hhhh 字符 \cX - 控制字符 \0 - 空字符 \a - alert 字符 \t - 制表符 \n - 换行符 \v - 垂直制表符 \f - 换页符 \r - 回车符 \e - escape 字符 [\b] - 退格符 ``` ### 用户名和密码 1. 用户名和密码格式验证: - 正则表达式: `^[a-zA-Z]\w{5,15}$` - 正确格式: 字母开头,6~16位包含字母、数字、下划线 ### 电话号码 1. 电话号码格式验证: - 正则表达式: `^(\d{3,4}-)\d{7,8}$` - 正确格式: 区号-号码 或 区号号码 ### 手机号码 1. 手机号码格式验证: - 正则表达式: `^1[3|4|5|7|8][0-9]\d{8}$` ### 身份证号 1. 身份证号格式验证: - 正则表达式: `\d{14}[[0-9],0-9xX]` ### Email地址 1. Email地址格式验证: - 正则表达式: `^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$` ### 字符串组成 1. 数字和字母组成的字符串: - 正则表达式: `^[A-Za-z0-9]+$` ### 数字 1. **整数或小数:** - 正则表达式: `^[0-9]+([.][0-9]+){0,1}$` 2. **只能输入数字:** - 正则表达式: `^[0-9]*$` 3. **n位数字:** - 正则表达式: `^\d{n}$` 4. **至少n位数字:** - 正则表达式: `^\d{n,}$` 5. **m~n位数字:** - 正则表达式: `^\d{m,n}$` 6. **零和非零开头的数字:** - 正则表达式: `^(0|[1-9][0-9]*)$` 7. **有两位小数的正实数:** - 正则表达式: `^[0-9]+(\.[0-9]{2})?$` 8. **1~3位小数的正实数:** - 正则表达式: `^[0-9]+(\.[0-9]{1,3})?$` 9. **非零的正整数:** - 正则表达式: `^\+?[1-9][0-9]*$` 10. **非零的负整数:** - 正则表达式: `^\-[1-9][0-9]*$` ### 字符串长度 1. **长度为3的字符:** - 正则表达式: `^.{3}$` 2. **由26个英文字母组成的字符串:** - 正则表达式: `^[A-Za-z]+$` 3. **由26个大写英文字母组成的字符串:** - 正则表达式: `^[A-Z]+$` 4. **由26个小写英文字母组成的字符串:** - 正则表达式: `^[a-z]+$` ### 特殊字符 1. 验证是否含有特殊字符: - 正则表达式: `[%&',;=?$\\^]+` ### 汉字 1. 只能输入汉字: - 正则表达式: `^[\u4e00-\u9fa5]{0,}$` ### URL 1. 验证URL: - 正则表达式: `^http://([\w-]+\.)+[\w-]+(/[\w-./?%&=]*)?$` ### 月份和日期 1. **一年的12个月:** - 正则表达式: `^(0?[1-9]|1[0-2])$` 2. **一个月的31天:** - 正则表达式: `^((0?[1-9])|((1|2)[0-9])|30|31)$` 3. **日期格式:** - 正则表达式: `\d{4}[年|\-|\.]\d{\1-\12}[月|\-|\.]\d{\1-\31}日?` ### 其他 1. **匹配双字节字符:** - 正则表达式: `[^\x00-\xff]` 2. **匹配空白行:** - 正则表达式: `\n\s*\r` 3. **匹配HTML标记:** - 正则表达式: `<(\S*?)[^>]*>.*?|<.*? />` 4. **匹配首尾空白字符:** - 正则表达式: `^\s*|\s*$` 5. **匹配网址URL:** - 正则表达式: `[a-zA-z]+://[^\s]*` 6. **帐号是否合法:** - 正则表达式: `^[a-zA-Z][a-zA-Z0-9_]{4,15}$` 7. **腾讯QQ号:** - 正则表达式: `[1-9][0-9]{4,}` 8. **中国邮政编码:** - 正则表达式: `[1-9]\d{5}(?!\d)` 9. **IP地址:** - 正则表达式: `([1-9]{1,3}\.){3}[1-9]` 10. **MAC地址:** - 正则表达式: `([A-Fa-f0-9]{2}\:){5}[A-Fa-f0-9]` ### 函数 1. **正则表达式校验函数 (IsRegu):** ```vbscript Function IsRegu(Regu, s) ' 正则表达式校验 If Regu = "" Then Exit Function End If Dim Re, Sre Set Re = New RegExp Re.Pattern = Regu Sre = Re.Test(s) If Sre = True Then IsRegu = True Else IsRegu = False End If End Function ``` 2. **验证URL:** ```javascript function IsValidUrl(str) { var regu = "^(https?://)" + "?(([0-9a-z_!~*'().&=+$%-]+:)?[0-9a-z_!~*'().&=+$%-]+@)?" + "(([0-9]{1,3}\.){3}[0-9]{1,3}" + "|" + "([0-9a-z_!~*'()-]+\.)*" + "([0-9a-z][0-9a-z-]{0,61})?[0-9a-z]\." + "[a-z]{2,6})" + "(:[0-9]{1,4})?" + "((/?)|" + "(/[0-9a-z_!~*'().;?:@&=+$,%#-]+)+/?)$"; var re = new RegExp(regu); if (!re.test(str)) { return false; } return true; } ```