20道正则表达式练习题及代码示例
20道正则表达式练习题涵盖邮箱、IP地址、日期、电话、URL、邮编、信用卡号、大小写单词、数字、HTML标签、空白字符、十六进制颜色、浮点数、时间等常见匹配场景,从基础到进阶,每道题附有表达式和示例。
正则表达式这东西,用好了是利器,用不对就是一团乱码。下面这20道练习题,从基础到进阶,覆盖了日常开发中最常见的文本匹配场景。每道题都附上了表达式和示例,方便直接上手验证。

题目 1:匹配有效的电子邮件地址
先从最常用的场景开始——验证邮箱。规则很简单:用户名部分允许字母、数字、点号、下划线、百分号、加号和减号,后面跟@,然后是域名,最后是顶级域名(至少2个字母)。
^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+.[a-zA-Z]{2,}$
示例:example@example.com
题目 2:匹配IPv4地址
IP地址匹配稍微绕一点,关键是每个字段只能是0-255。用分组加或运算,把每个数字范围拆成三段:250-255、200-249、100-199,以及0-99。
^(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9]?[0-9])(.(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9]?[0-9])){3}$
示例:192.168.1.1
题目 3:匹配日期格式YYYY-MM-DD
日期格式需要兼顾月份和日期的合法性。月份01-12,日期01-31,但这里没做平闰年的精细校验(日常够用了)。
^d{4}-(0[1-9]|1[0-2])-(0[1-9]|[12][0-9]|3[01])$
示例:2023-04-09
题目 4:匹配电话号码(123) 456-7890
北美电话格式,括号内三位区号,中间一个空格,然后三位-四位。注意括号本身需要转义。
^(d{3}) d{3}-d{4}$
示例:(123) 456-7890
题目 5:匹配URL
URL匹配要支持http、https和ftp,后面跟上非空白字符的路径。
^(https?|ftp)://[^s/$.?#].[^s]*$
示例:https://www.example.com
题目 6:匹配邮政编码(5位或9位)
美国邮编有两种:五位纯数字,或者五位+连字符+四位。后面的四位数可选。
^d{5}(-d{4})?$
示例:12345 或 12345-6789
题目 7:匹配16位信用卡号
信用卡号常以4组4位数字显示,中间可能有连字符。这个表达式允许连字符存在0或1次。
^d{4}-?d{4}-?d{4}-?d{4}$
示例:1234-5678-9012-3456
题目 8:匹配全大写单词
只包含大写字母的字符串,一个或多个。
^[A-Z]+$
示例:HELLO
题目 9:匹配全小写单词
同理,只包含小写字母。
^[a-z]+$
示例:hello
题目 10:匹配包含数字的字符串
只要字符串里至少有一个数字就行,其他字符随意。
.*d.*
示例:abc123
题目 11:匹配以特定单词开头的字符串
如果你想检查字符串是否以某个词开头,用这个模式。
^word.*
示例:wordplay
题目 12:匹配以特定单词结尾的字符串
反过来,检查是否以某个词结尾。
.*word$
示例:playword
题目 13:匹配包含特定单词的字符串
使用单词边界精确匹配整个单词,避免部分匹配的干扰。
.*bwordb.*
示例:this is a word in a sentence
题目 14:匹配HTML标签
提取HTML标签时,注意匹配尖括号内的所有内容,但不要跨行。
<[^>]+>
示例: 一个或多个空白符(空格、制表符、换行等),常用于替换或分割。 示例: 与上面相反,匹配所有非空白字符,连续的一段。 示例: 精准定位单词的边界,常用于替换时保留单词完整性。 示例: Web颜色代码分6位和3位简写两种,以#开头,后面跟6个或3个十六进制字符。 示例: 支持正负号、整数部分和小数部分,小数部分可选。 示例: 24小时制,小时00-23,分钟00-59。 示例: 通过这些练习题和示例,你可以更好地理解和应用正则表达式。希望这些题目能帮助你提高正则表达式的技能!题目 15:匹配连续的空白字符
s+
Hello World(匹配中间的空格)题目 16:匹配非空白字符
S+
HelloWorld题目 17:匹配单词边界
bwordb
word题目 18:匹配十六进制颜色代码
^#([A-Fa-f0-9]{6}|[A-Fa-f0-9]{3})$
#FFA07A题目 19:匹配浮点数
^-?d+(.d+)?$
-123.45题目 20:匹配时间格式HH:MM
^([01]d|2[0-3]):([0-5]d)$
14:30总结
WPS Office是一款面向macOS用户的综合办公套件,将文字处理、电子表格、演示文稿、PDF工具、模板与云协作整合在同一应用中。它兼容常见Microsoft Office格式,支持Intel及Apple芯片Mac,基础功能可免费使用,
Shapr3D是一款面向工业设计、机械工程、建筑概念和三维打印工作流的CAD软件。Mac版采用Parasolid建模内核,支持草图约束、实体建模、工程图、可视化渲染及常见CAD格式交换,并可通过账户在多台设备之间同步项目。
REAPER是Cockos开发的数字音频工作站,提供多轨音频与MIDI录制、剪辑、处理、混音和母带制作工具。Mac版兼容Intel与Apple芯片,支持AU、VST、VST3、CLAP等插件格式,并提供高度可定制的工作流程。
Adobe Photoshop 是面向摄影师、设计师和内容创作者的专业图像处理工具,可在 Windows 上完成照片修饰、选区抠图、图层合成、文字排版、绘画及生成式编辑。软件采用订阅授权,由 Creative Cloud 管理安装、更新与许
Adobe InDesign 是面向印刷与数字出版的专业页面排版工具,可制作书籍、杂志、宣传册、海报、交互式 PDF 和电子书。它提供精细的文字样式、多页面管理、印前检查及多格式输出能力,并能与 Photoshop、Illustrator
Adobe Illustrator 是用于绘制矢量图形、插画、图标、徽标和版式的专业设计工具。它以路径和锚点为核心,作品放大后仍能保持清晰,并提供画板、文字、渐变、图像描摹及精确变换等功能,适合品牌视觉、印刷物料、数字界面和商业插画创作。













