正则表达式

正则语法

^(开始字符限定)

^Hh:表示以”Hh”开始的字符串,如”Hhxxx”、”Hh xxx”

$(结束字符限定)

sm:表示以”sm”结束的字符串,如”Hhhsm”

.(表示任何字符)

.:表示任何字符字符

|(或关系)

“hi|ha”:表示一个字符串有”hi”或”ha”,如”xxhixx”、”xxhaxx”

“*”(尾部字符重复)

ab*:表示字符串有一个”a”,后面跟着零个多个“b”,如”a”、”abbb…”

+(尾部字符重复)

ab+:表示字符串有一个”a”,后面跟着一个多个“b”,如”ab”、”abbb…”

?(尾部字符重复)

ab?:表示字符串有一个”a”,后面跟着零个一个“b”,如”a”、”ab”

{}(限定长度)

ab{2}:表示字符串有一个”a”,后面跟着两个**”b”,如”abb”
ab{2,}:表示字符串有一个”a”,后面跟着至少两个**”b”,如”abb”,”abbb…”
ab{2,5}:表示字符串有一个”a”,后面跟着两到五个**”b”,如 “abb”,”abbbbb”
注意必须设置下限,如{0,2},而不是{,2}。

  • “*” == “{0,}”
  • “+” == “{1,}”
  • “?” == “{0,1}”

[](限定内容)

允许内容

“[abcd]”:表示字符串包含”a”、”d”、”c”、”d”任意一个。等于”a|b|c|d”
“[a-d]”:相当于”[abcd]”
“^[a-zA-Z]”:表示已字母开头的字符串。如”a12e”
“a.[0-9]”:表示字符串有一个”a”后面跟着一个任意字符和一个数字;如”a2”

禁止内容

“%[^a-zA-Z+]%”:表示两个百分号之间不应该出现字母,如”%12%”

() 优先规则

“a(h|f)b”:表示一个字符串有”ahf”或”afb”,如”xxahfxx”、”xxafbxx”
“a(hljlf)*b”:表示字符串有一个”a”,后面接上一串”h”、”j”、”f”混合字符后面,后面接上跟上”c”,如:”asdahjffhjjhffhjjhfbsadas”

特殊匹配

\d

\d:用于匹配从0到9的数字

\w

\w:用于匹配字母,数字或下划线字符

“/^” 和 “$/” 成对使用

/^[0-9]{1,20}$/:表示是否是全由数字组成长度为1到20的字符串

转义字符

“^.$()|*+?{\”:只当字符表示是需要在前面加上转义字符”\”

常用表达式

  • “^\d+$” –> 非负整数(正整数 + 0)
  • “^[0-9][1-9][0-9]$” –> 正整数
  • “^((-\d+)|(0+))$” –> 非正整数(负整数 + 0)
  • “^-[0-9][1-9][0-9]$” –> 负整数
  • “^-?\d+$” –> 整数
  • “^\d+(.\d+)?$” –> 非负浮点数(正浮点数 + 0)
  • “^(([0-9]+.[0-9][1-9][0-9])|([0-9][1-9][0-9].[0-9]+)|([0-9][1-9][0-9]))$” –> 正浮点数
  • “^((-\d+(.\d+)?)|(0+(.0+)?))$” –> 非正浮点数(负浮点数 + 0)
  • “^(-(([0-9]+.[0-9][1-9][0-9])|([0-9][1-9][0-9].[0-9]+)|([0-9][1-9][0-9])))$” –> 负浮点数
  • “^(-?\d+)(.\d+)?$” –> 浮点数
  • “^[A-Za-z]+$” –> 由26个英文字母组成的字符串
  • “^[A-Za-z0-9]+$” –> 由数字和26个英文字母组成的字符串
  • “^\w+$” –> 由数字、26个英文字母或者下划线组成的字符串
  • “^[\w-]+(.[\w-]+)@[\w-]+(.[\w-]+)+$” –> *email地址
  • “^[a-zA-z]+://(\w+(-\w+))(.(\w+(-\w+)))(\?\S)?$” –> URL
  • “/^(d{2}|d{4})-((0([1-9]{1}))|(1[1|2]))-((0-2)|(3[0|1]))$/” –> 年-月-日
  • “/^((0([1-9]{1}))|(1[1|2]))/((0-2)|(3[0|1]))/(d{2}|d{4})$/” –> 月/日/年
  • “^([w-.]+)@(([[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.)|(([w-]+.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(]?)$” –> Emil
  • “(d+-)?(d{4}-?d{7}|d{3}-?d{8}|^d{7,8})(-d+)?” –> 电话号码
  • “^(d{1,2}|1dd|2[0-4]d|25[0-5]).(d{1,2}|1dd|2[0-4]d|25[0-5]).(d{1,2}|1dd|2[0-4]d|25[0-5]).(d{1,2}|1dd|2[0-4]d|25[0-5])$” –> IP地址
  • “^([0-9A-F]{2})(-[0-9A-F]{2}){5}$” –> MAC地址的正则表达式
  • “^[-+]?\d+(.\d+)?$” –> 值类型正则表达式
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值