正则表达式语法介绍

正则表达式使用单个字符串来描述、匹配一系列符合某个句法规则的字符串

字符集合   说明

   ^            匹配输入字符串的开始位置。要匹配 "^" 字符本身,请使用 "\^"
   $            匹配输入字符串的结尾位置。要匹配 "$" 字符本身,请使用 "\$"
   ( )           标记一个子表达式的开始和结束位置。要匹配小括号,请使用 " "" "
   [ ]           用来自定义能够匹配 '多种字符' 的表达式。要匹配中括号,请使用 "

""
"
   { }           修饰匹配次数的符号。要匹配大括号,请使用 "\{" 和 "\}"
   .            匹配除了换行符(\n)以外的任意一个字符。要匹配小数点本身,请使用 "\."
   ?            修饰匹配次数为 0 次或 1 次。要匹配 "?" 字符本身,请使用 "\?"
   +            修饰匹配次数为至少 1 次。要匹配 "+" 字符本身,请使用 "\+"
   *            修饰匹配次数为 0 次或任意次。要匹配 "*" 字符本身,请使用 "\*"
   |            左右两边表达式之间 "或" 关系。匹配 "|" 本身,请使用 "\|"

  字符集合   说明
   .            小数点可以匹配除了换行符(\n)以外的任意一个字符
   \w           可以匹配任何一个字母或者数字或者下划线
   \W           W大写,可以匹配任何一个字母或者数字或者下划线以外的字符
   \s           可以匹配空格、制表符、换页符等空白字符的其中任意一个
   \S           S大写,可以匹配任何一个空白字符以外的字符
   \d           可以匹配任何一个 0~9 数字字符
   \D           D大写,可以匹配任何一个非数字字符

 

  限定符          说明
   {n}           表达式固定重复n次,比如:"\w{2}" 相当于 "\w\w"
   {m, n}         表达式尽可能重复n次,至少重复m次:"ba{1,3}"可以匹配 "ba"或"baa"或"baaa"
   {m, }          表达式尽可能的多匹配,至少重复m次:"\w\d{2,}"可以匹配 "a12","x456"...
   ?            表达式尽可能匹配1次,也可以不匹配,相当于 {0, 1}
   +            表达式尽可能的多匹配,至少匹配1次,相当于 {1, }
   *            表达式尽可能的多匹配,最少可以不匹配,相当于 {0, }

选择表达式 xxx | xxx:
  使用竖线 "|" 分隔多段表达式,整个表达式可匹配其中任意一段。
说明
  正则引擎总是从左向右进行尝试匹配,如果每一段表达式都匹配失败,则整个表达式匹配失败。

 

 正则表达式示例

    英文 = "^[A-Za-z]+$";

    数字 = "^\\d+$";

    整数 = "^[-\\+]?\\d+$";

    实数 = "^[-\\+]?\\d+(.\\d+)?$";

    邮件 = "^[a-zA-Z0-9_]+@[a-zA-Z0-9_]+.[a-zA-Z]{2,5}?((.cn)|(.jp))?$";

    邮件2 = "^[a-zA-Z0-9_]+[\\Wa-zA-Z0-9_]*@[a-zA-Z0-9_]+.[a-zA-Z]{2,5}?((.cn)|(.jp))?$";

    网址 = "^http:\\\\\\[A-Za-z0-9]+.[A-Za-z0-9]+[-\\\=?%&_~`@\\[\\]\':+!]*([^<>\"\"])*$";

    电话 = "^((\\(\\d{3}\\-\\))?(\\(0\\d{2,3}\\)|0\\d{2,3}-))?[1-9]\\d{6,7}$";

    手机 = "^((\\(\\d{3}\\))|(\\d{3}\\-))?((13)|(15))\\d{9}$";

    货币 = "^\\d+(\\.\\d+)?$";

    邮编 = "^[1-9]\\d{5}$";

    身份证 = "^\\d{17}[x0-9]$";

    QQ = "^[1-9]\\d{4,8}$";

    UnixPath="^([/][A-Za-z0-9])+*$";


正则表达式速查表

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值