常用正则表达式整理

前几天才刚学过正则表达式,这还没过几天就忘得差不多了。

在网上翻阅了一下,发现之前学习并未完善,于是整理一下以便今后学习。

以下正则表达式仅供参考,在线测试http://tool.oschina.net/regex/#

数据类

  1. 正整数 ^[1-9]\d\*$
    解析:^匹配输入字符串开始的位置。[1-9]代表首位为1-9的任何数字。\d代表0-9的任何数字。*代表前面的\d出现0次或多次。$匹配输入字符串结尾的位置。

  2. 非负整数 ^\d+$
    解析:非负整数,前面有0也可匹配,例如0000。

  3. 非正整数 ^(-\d+|(0+))$

  4. 负整数^-[0-9]*[1-9][0-9]*$

  5. 整数 ^\-?\d+$

  6. 正浮点数 ^[1-9]\d*\.\d*|0\.\d*[1-9]\d*$

  7. 负浮点数 ^-[1-9]\d*\.\d*|-0\.\d*[1-9]\d*$

常用类

  1. 电话号码 ^1[35678][0-9]{9}$

  2. 电子邮箱 \w+@\w.\w (凑合用格式)

  3. QQ号 [1-9][0-9]{4,}

  4. 身份证号 ^(\d{6})(\d{4})(\d{2})(\d{2})(\d{3})([0-9]|X)$

  5. 网址 [a-zA-z]+://[^\s]*