Common Regular Expressions

Essential regex collection for developers, covering phone numbers, ID cards, emails and more, one-click copy and online testing

▼手机号3 patterns
中国大陆手机号
Test Online
^1[3-9]\d{9}$

常用正则表达式速查

✅ Match138001380001991234567815088886666
❌ No Match12345678901138001380013800138000123800138000
手机号(宽松)
Test Online
^1\d{10}$

宽松匹配所有1开头的11位数字

✅ Match1380013800012345678901
❌ No Match234567890121380013800138001380001
手机号(含国际区号)
Test Online
^(\+86)?1[3-9]\d{9}$

支持可选的+86国际区号前缀

✅ Match13800138000+8613800138000
❌ No Match8613800138000008613800138000
▼身份证2 patterns
身份证号(18位)
Test Online
^[1-9]\d{5}(19|20)\d{2}(0[1-9]|1[0-2])(0[1-9]|[12]\d|3[01])\d{3}[\dXx]$

匹配18位二代身份证号码,含出生日期校验

✅ Match11010119900307451832010219900101123444010119900101123X
❌ No Match11010119900307451110101199013074518010101199003074518
身份证号(15或18位)
Test Online
(^[1-9]\d{5}(19|20)\d{2}(0[1-9]|1[0-2])(0[1-9]|[12]\d|3[01])\d{3}[\dXx]$)|(^[1-9]\d{5}\d{2}(0[1-9]|1[0-2])(0[1-9]|[12]\d|3[01])\d{3}$)

同时兼容15位和18位身份证号码

✅ Match110101199003074518110101900307451
❌ No Match11010119900307451110101901307451
▼邮箱2 patterns
邮箱地址
Test Online
^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$

匹配常见邮箱格式,支持点号、下划线等特殊字符

✅ Matchtest@example.comuser.name+tag@domain.cohello@sub.domain.org
❌ No Match@example.comtest@test@.comtest@com
邮箱(宽松)
Test Online
^\S+@\S+\.\S+$

宽松匹配,只要求包含@和.且无空格

✅ Matchtest@example.coma@b.c
❌ No Match@example.comtest@test @example.com
▼URL2 patterns
URL地址
Test Online
^https?:\/\/(www\.)?[-a-zA-Z0-9@:%._\+~#=]{1,256}\.[a-zA-Z0-9()]{1,6}\b([-a-zA-Z0-9()@:%_\+.~#?&\/=]*)$

匹配http和https开头的URL地址

✅ Matchhttps://www.example.comhttp://example.com/path?q=1https://sub.domain.com:8080/path
❌ No Matchftp://example.comexample.comhttps://
URL(含中文)
Test Online
^https?:\/\/(www\.)?[-a-zA-Z0-9@:%._\+~#=]{1,256}\.[a-zA-Z0-9()]{1,6}\b([-a-zA-Z0-9()@:%_\+.~#?&\/=\u4e00-\u9fa5]*)$

扩展支持URL中包含中文字符

✅ Matchhttps://example.com/路径http://site.com/搜索?q=你好
❌ No Matchftp://example.comnot a url
▼IP地址3 patterns
IPv4地址
Test Online
^((25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(25[0-5]|2[0-4]\d|[01]?\d\d?)$

匹配合法的IPv4地址,每 paragraphs0-255

✅ Match192.168.1.1255.255.255.00.0.0.010.0.0.1
❌ No Match256.1.1.1192.168.1192.168.1.1.1abc.def.ghi.jkl
IPv6地址
Test Online
^([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}$

匹配完整格式的IPv6地址

✅ Match2001:0db8:85a3:0000:0000:8a2e:0370:7334fe80:0000:0000:0000:0000:0000:0000:0001
❌ No Match2001:db8:85a3::8a2e:370:7334192.168.1.1not:an:ipv6:address
IP地址(v4或v6)
Test Online
(^((25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(25[0-5]|2[0-4]\d|[01]?\d\d?)$)|(^([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}$)

同时匹配IPv4和IPv6地址

✅ Match192.168.1.12001:0db8:85a3:0000:0000:8a2e:0370:7334
❌ No Match999.999.999.999not-an-ip
▼中文字符3 patterns
中文字符
Test Online
^[\u4e00-\u9fa5]+$

匹配纯中文字符(汉字)

✅ Match你好测试中文正则表达式
❌ No Matchhello你好world123中文!
中文字符(含标点)
Test Online
^[\u4e00-\u9fa5\u3000-\u303f\uff00-\uffef]+$

匹配中文字符及中文标点符号

✅ Match你好,世界!中文,。!全角符号A
❌ No Matchhello中文english123
含中文的字符串
Test Online
[\u4e00-\u9fa5]

检测字符串中Yes否包含中文

✅ Match你好worldtest测试123中文
❌ No Matchhello123456abc!@#
▼银 rows卡2 patterns
银 rows卡号
Test Online
^[1-9]\d{15,18}$

匹配16-19位银 rows卡号(不含空格)

✅ Match622202123456789012362220212345678906228480012345678901
❌ No Match123456789012345622202123456789012340123456789012345
银 rows卡号(含空格)
Test Online
^[1-9]\d{3}(\s?\d{4}){3,4}$

匹配带可选空格分隔的银 rows卡号

✅ Match6222 0212 3456 789062220212345678906222 0212 3456 7890 123
❌ No Match1234 5678 9012 34562220 2123 4567 890
▼车牌号3 patterns
普通车牌号
Test Online
^[京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤川青藏琼宁][A-Z][A-HJ-NP-Z0-9]{4}[A-HJ-NP-Z0-9挂学警港澳]$

匹配中国大陆普通民用车牌号

✅ Match京A12345沪B1234D粤A123AB京A1234挂
❌ No MatchA123456京1A2345京a12345
新能源车牌号
Test Online
^[京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤川青藏琼宁][A-Z][A-HJ-NP-Z0-9]{5}[DF]$

匹配新能源汽车车牌号(6位字符+D/F结尾)

✅ Match京AD12345沪BF12345粤AD12345
❌ No Match京A123456京AD1234京AD1234A
车牌号(通用)
Test Online
^[京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤川青藏琼宁][A-Z][A-HJ-NP-Z0-9]{4,5}[A-HJ-NP-Z0-9挂学警港澳DF]$

兼容普通和新能源车牌号

✅ Match京A12345京AD12345沪B1234D
❌ No MatchA123456京1A2345
▼密码强度3 patterns
强密码
Test Online
^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)(?=.*[@$!%*?&])[A-Za-z\d@$!%*?&]{8,}$

至少8位,包含大小写字母、数字和特殊字符

✅ MatchTest@1234Hello#2024P@ssw0rd!
❌ No Matchtest1234TEST1234Test1234Te@1
中等密码
Test Online
^(?=.*[a-zA-Z])(?=.*\d)[A-Za-z\d@$!%*?&]{6,}$

至少6位,包含字母和数字

✅ MatchTest1234abc123Hello1!
❌ No Match123456abcdeftest
密码(仅限字母数字)
Test Online
^[A-Za-z0-9]{6,20}$

6-20位,仅限字母和数字

✅ MatchTest1234abc123AbCdEf123456
❌ No MatchTest@123abc12345
▼日期格式3 patterns
日期(YYYY-MM-DD)
Test Online
^\d{4}-(0[1-9]|1[0-2])-(0[1-9]|[12]\d|3[01])$

匹配YYYY-MM-DD格式日期

✅ Match2024-01-152023-12-312000-06-01
❌ No Match2024-13-012024-00-1524-01-152024/01/15
日期(YYYY/MM/DD)
Test Online
^\d{4}\/(0[1-9]|1[0-2])\/(0[1-9]|[12]\d|3[01])$

匹配YYYY/MM/DD格式日期

✅ Match2024/01/152023/12/312000/06/01
❌ No Match2024/13/012024/00/152024-01-15
日期时间
Test Online
^\d{4}-(0[1-9]|1[0-2])-(0[1-9]|[12]\d|3[01])\s([01]\d|2[0-3]):([0-5]\d):([0-5]\d)$

匹配YYYY-MM-DD HH:mm:ss格式

✅ Match2024-01-15 08:30:002023-12-31 23:59:59
❌ No Match2024-01-15 24:00:002024-01-15 8:30:02024-01-15
▼QQ号1 patterns
QQ号
Test Online
^[1-9]\d{4,10}$

匹配5-11位QQ号,首位不为0

✅ Match12345123456789098765432101
❌ No Match012341234123456789012abc123
▼微信号1 patterns
微信号
Test Online
^[a-zA-Z][a-zA-Z0-9_-]{5,19}$

6-20位,以字母开头,支持字母、数字、下划线和减号

✅ Matchwechat_01MyWeChatuser-name_2024
❌ No Match1wechatabcwechat!a12
▼邮政编码1 patterns
邮政编码
Test Online
^[1-9]\d{5}$

匹配6位中国邮政编码,首位不为0

✅ Match100000518000200001310000
❌ No Match010000123451234567abcdef
▼MAC地址3 patterns
MAC地址(冒号分隔)
Test Online
^([0-9A-Fa-f]{2}:){5}[0-9A-Fa-f]{2}$

匹配冒号分隔的MAC地址

✅ Match00:1A:2B:3C:4D:5Eaa:bb:cc:dd:ee:ffFF:FF:FF:FF:FF:FF
❌ No Match00:1A:2B:3C:4D00:1A:2B:3C:4D:5E:6FGG:HH:II:JJ:KK:LL
MAC地址(短横线分隔)
Test Online
^([0-9A-Fa-f]{2}-){5}[0-9A-Fa-f]{2}$

匹配短横线分隔的MAC地址

✅ Match00-1A-2B-3C-4D-5Eaa-bb-cc-dd-ee-ff
❌ No Match00-1A-2B-3C-4D00:1A:2B:3C:4D:5E
MAC地址(通用)
Test Online
^([0-9A-Fa-f]{2}[:-]){5}[0-9A-Fa-f]{2}$

同时匹配冒号和短横线分隔的MAC地址

✅ Match00:1A:2B:3C:4D:5E00-1A-2B-3C-4D-5E
❌ No Match00:1A:2B:3C:4D001A2B3C4D5E

Regex Usage Guide

Basic Syntax

  • . - Match any single character
  • \d - Match a digit [0-9]
  • \w - Match a word character (alphanumeric + underscore)
  • * - Match preceding expression 0 or more times
  • + - Match preceding expression 1 or more times
  • ? - Match preceding expression 0 or 1 time
  • {n,m} - Match n to m times
  • [abc] - Match a, b, or c
  • ^...$ - Match start and end of string

Usage Tips

  • Click "Copy Regex" to quickly get the regex pattern
  • Click "Test Online" to jump to the regex tester
  • Case sensitivity: add i flag for case-insensitive matching
  • Global matching: add g flag to match all results
  • Consider edge cases and abnormal input in real use
  • Thoroughly test in your target environment before use

常见问题

相关工具