正则表达式是一种强大的文本模式匹配工具,用于在字符串中查找、替换和验证特定模式的文本。下面是一些常用的正则表达式示例:
-
匹配Email地址:
^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$
-
匹配URL:
^(https?|ftp)://[^\s/$.?#].[^\s]*$
-
匹配手机号码(简单版,只匹配11位数字):
^1\d{10}$
-
匹配身份证号码(简单版,只匹配18位数字):
^\d{17}(\d|X|x)$
-
匹配日期(YYYY-MM-DD格式):
^\d{4}-\d{2}-\d{2}$
-
匹配IP地址:
^(?:[0-9]{1,3}\.){3}[0-9]{1,3}$
-
匹配HTML标签:
<([a-zA-Z][a-zA-Z0-9]*)\b[^>]*>(.*?)</\1>
-
匹配邮政编码(6位数字):
^\d{6}$
-
匹配整数(可包含正负号):
^[-+]?\d+$
-
匹配小数(可包含正负号):
^[-+]?\d+(\.\d+)?$
-
匹配只包含字母和数字的字符串:
^[a-zA-Z0-9]+$
-
匹配只包含字母的字符串:
^[a-zA-Z]+$
-
匹配只包含数字的字符串:
^\d+$
-
匹配连续重复的字符(如"aaa"、“bbbb”):
^(\w)\1+$
-
匹配HTML注释:
<!--(.*?)-->
-
匹配包含特定单词的字符串(不区分大小写):
\bword\b
其中,将"word"替换为你要匹配的单词。
-
匹配包含至少一个数字和一个字母的字符串:
(?=.*\d)(?=.*[a-zA-Z]).+
-
匹配包含至少一个大写字母、一个小写字母和一个数字的字符串:
(?=.*[a-z])(?=.*[A-Z])(?=.*\d).+
-
匹配16进制颜色代码:
^#([A-Fa-f0-9]{6}|[A-Fa-f0-9]{3})$
-
匹配XML或HTML标签中的属性值:
\battribute="([^"]*)"
其中,将"attribute"替换为你要匹配的属性名。
-
匹配包含至少一个特殊字符的字符串:
[\W_]
-
匹配IPv4地址:
^(?:[0-9]{1,3}\.){3}[0-9]{1,3}$
-
匹配IPv6地址:
^(?:[0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}$
-
匹配16进制数值:
^[0-9a-fA-F]+$
-
匹配XML或HTML标签:
<\/?[^>]+\/?>
-
匹配Markdown格式的链接:
\[([^\]]+)\]\(([^\)]+)\)
-
匹配JSON格式的键值对:
"(.*?)":\s*"(.*?)"
-
匹配包含至少一个空白字符的字符串:
\s+
-
匹配日期(格式为YYYY-MM-DD):
\d{4}-\d{2}-\d{2}
-
匹配时间(24小时制,格式为HH:MM):
([01]\d|2[0-3]):[0-5]\d
-
匹配邮政编码(5位或9位数字):
\d{5}(-\d{4})?
-
匹配HTML标签中的内容:
<[^>]+>([^<]+)<\/[^>]+>
-
匹配Markdown格式的标题(#后面的文本):
^#{1,6}\s(.+)$
-
匹配包含至少一个连续重复字符的字符串:
(\w)\1+
-
匹配包含至少一个大写字母的字符串:
[A-Z]+
-
匹配包含至少一个小写字母的字符串:
[a-z]+
-
匹配包含至少一个数字的字符串:
\d+
-
匹配包含至少一个字母或数字的字符串:
\w+
-
匹配包含至少一个非字母和非数字字符的字符串:
\W+
-
匹配包含至少一个非空白字符的字符串:
\S+