几种常用的正则表达式

1、身份证号正则表达式

身份证号是一串18位数字和字母的组合,其中最后一位可能为数字或者字母 X。以下是可以用于匹配身份证号的正则表达式:

/^[1-9]\d{5}(19|20)\d{2}((0[1-9])|(1[0-2]))(([0-2][1-9])|10|20|30|31)\d{3}[Xx\d]$/

上述正则表达式中包含以下部分:

  • ^[1-9]\d{5} 匹配前六位地址码,第一位不能为 0。
  • (19|20)\d{2} 匹配出生年份,从 1900 年至今。
  • ((0[1-9])|(1[0-2])) 匹配出生月份,01 至 12。
  • (([0-2][1-9])|10|20|30|31) 匹配出生日期,考虑了每个月的天数和闰年的情况。
  • \d{3} 匹配顺序码,通过性别和出生时间来区分。
  • [Xx\d]$ 匹配校验码,最后一位可能为数字或字母 X。

需要注意的是,该正则表达式只能判断身份证号格式是否正确。如果要验证身份证号是否真实存在,还需要结合公安部门的身份证号数据库进行查询验证

2、手机号正则表达式

以下是可以用于匹配中国大陆手机号的正则表达式:

/^1[3-9]\d{9}$/

上述正则表达式中包含以下部分:

  • ^1 匹配以 1 开头的手机号。
  • [3-9] 匹配第二位开头为 3~9 中的任意一个数字。
  • \d{9} 匹配后面的 9 个数字。

该正则表达式可以有效地匹配符合中国大陆手机号规则的号码,而且简单易懂。但需要注意的是,在实际应用中,还需要根据需求进行一定的调整和优化,例如允许前面加上 +86 或者在号码中间添加空格等情况。

3、只能输入字母

以下是可以用于匹配只含字母的正则表达式:

/^[a-zA-Z]+$/

上述正则表达式中包含以下部分:

  • ^ 匹配字符串开始。
  • [a-zA-Z] 匹配任意一个大小写字母。
  • + 表示前面的字符可以出现一次或多次,即可以匹配多个字母组成的字符串。
  • $ 匹配字符串结尾。

该正则表达式可以匹配由一个或多个大小写字母组成的字符串,并且不允许包含其他字符。如果需要匹配字母及数字,可以将正则表达式改为 /^[a-zA-Z0-9]+$/,其中 [a-zA-Z0-9] 匹配任意一个大小写字母或数字。

4、正则表达式验证链接

以下是用于验证链接格式的正则表达式:

/^(http|https):\/\/[\w.\-]+(\.[\w\-]+)+([\/?][\w\-]*)*\/?$/

上述正则表达式中包含以下部分:

  • ^ 匹配字符串开始。
  • (http|https) 匹配 "http" 或 "https"。
  • :\/\/ 匹配冒号+双斜线,即链接的协议部分 "://"。
  • [\w.\-]+ 匹配任意个由字母、数字、下划线、点或连字符组成的字符串(域名部分)。
  • (\.[\w\-]+)+ 匹配一个或多个 ".xxx" 形式的字符串(顶级域名及其子域名)。
  • ([\/?][\w\-]*)* 可选部分,匹配任意个 "/xxx" 或 "?xxx" 形式的字符串。
  • \/? 可选部分,匹配零个或一个斜杠 "/"。
  • $ 匹配字符串结尾。

该正则表达式可以匹配形如 "http://www.example.com/index.html"、"https://example.com/path/to/file" 等标准链接格式的字符串。注意,在实际应用时,该正则表达式可能需要根据具体情况进行适当修改或优化。

你可能感兴趣的:(正则表达式)