正则表达式笔记

元字符

  • . 匹配任何单个字符
  • * 匹配任意长度
  • + 匹配前面的一个或多个实例
  • ? 匹配前面的0个或多个实例
  • [...] 匹配方括号内的任意字符
  • ^ 匹配字符串开头
  • $ 匹配字符串末尾
  • {n,m} 匹配前面的字符出现n到m次
  • {n,} 匹配前面的字符至少出现三次

修饰符

修饰符位于结束定界符之后,用来改变正则表达式的行为。

  • i 不区分大小写
  • /s 忽略转义回车
  • /U

匹配字符域

  • [char list] 匹配方括号内的任意字符集,包括空格。此例即匹配c、h、a、r、空格、l、i、s、t中的任一字符
  • [^char list] 不匹配方括号内的字符,也可用!
  • [a-z] 匹配字符a-z,

还有几个–忘了叫啥了的–

  • \w 相当与[A-Za-z0-9]
  • \s 匹配空白字符,相当与[\t\r\n]
  • \d 匹配数字,[0-9]
  • \b backspace (0x08) (only if in a range specification) 注:大写效果与小写相反

实例1:

	//下面两种效果相同
	//匹配由字母数字下划线连字符组成,长度在3-15的用户名
	//注意连字符需要转义
	/^[\w_\-]{3,15}$/
	/^[A-Za-z0-9_\-]{3,15}$/

实例2:

	//匹配email地址
	//本地部分包含A-Za-z0-9等,不包含括号,#@;等
	/^([\w!#@$&'*+\/=?^'{|}~.\-]+)@([\w]+\.)
comments powered by Disqus