正则表达式是一种强大的工具,用于文本匹配和处理。以下是20道练习题,帮助你提高正则表达式的技能,并附上示例。
题目 1:匹配有效的电子邮件地址
正则表达式:
^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$
示例:example@example.com
题目 2:匹配IPv4地址
正则表达式:
^(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
正则表达式:
^\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
正则表达式:
^(https?|ftp)://[^\s/$.?#].[^\s]*$
示例:https://www.example.com
题目 6:匹配邮政编码(5位或9位)
正则表达式:
^\d{5}(-\d{4})?$
示例:12345
或 12345-6789
题目 7:匹配16位信用卡号
正则表达式:
^\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:匹配包含特定单词的字符串
正则表达式:
.*\bword\b.*
示例:this is a word in a sentence
题目 14:匹配HTML标签
正则表达式:
<[^>]+>
示例:<div>
题目 15:匹配连续的空白字符
正则表达式:
\s+
示例:Hello World
题目 16:匹配非空白字符
正则表达式:
\S+
示例:HelloWorld
题目 17:匹配单词边界
正则表达式:
\bword\b
示例: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
通过这些练习题和示例,你可以更好地理解和应用正则表达式。希望这些题目能帮助你提高正则表达式的技能!