正则表达式

正则表达式:

字符集:
[ ] :方括号表示其中的内容任选其一,代表一个字符  [1234] 1,2,3,4任选其一
( ) :表示一组内容,圆括号中可以使用"|"符号
| :逻辑或关系
^ :非,除了 [^12] 除了1或2的其他字符 
- :范围,范围应从小到大
[0-9] 表示此字符只能是数字
[a-f] 表示此字符只能是a,b,c,d,e,f之一
[0-6a-fA-F] 0123456abcdefABCDEF
{n,m} :修饰前一个字符,表示其出现n-m次.n应小于m
{n} :修饰前一个字符,表示其出现n次
{n,} :修饰前一个字符,表示其出现n次以上
 0[xX][0-9a-fA-F]{1,8}
 0x7fffffff  int最大值

预定义字符集:
\d :表示一个数字.与[0-9]意思一致
. :表示任意字符
\w :表示单词字符.[0-9a-zA-Z_] 包含个下划线
\s :表示空白: \t \n \r \b \p
\D :表示非数字
\W :非单词字符
\S :非空白
? :修饰前一个字符出现0-1次.  {0,1}
+ :修饰前一个字符出现1次以上.{1,}
* :修饰前一个字符出现任意次. {0,}

www.sohu.com
www.baidu.com
www.kaixin001.com
注意:"."在正则表达式中代表任意字符,若想表示"."的原意,我们需要使用"\."表示
 
[w]{3}\.[0-9a-zA-Z]+\.com
通过上面的正则表达式,是否能描述
wwww.sohu.com
可以的.原因在于正则表示式搜索整个字符串,判断部分内容满足 格式就可以.

为了解决让正则表达式全字符匹配.我们需要告诉正则表达式需要 从字符串的开始到结尾^  $
^[w]{3}\.[0-9a-zA-Z]+\.com$

常用的正则表达式:
邮编 : ^[0-9][0-9][0-9][0-9][0-9][0-9]$

邮编只有6位数字
^[0-9]{6}$
^\d{6}$

用户名 :单词字符出现8-10次
^\w{8,10}$
^[0-9a-zA-Z_]{8,10}$
手机号码 : +86 15811111111
       0086 15811111111
15811111111
        ^(\+86|0086)?\s?\d{11}$
  
身份证号:       15位或18位
                     18位最后一位有可能是x(大小写均可)
                    ^\d{15}(\d{2}[0-9xX])?$ 
   
 一个坐标:      18  ,  789
                       18  789
        ^\d+(\s*,\s*|\s+)\d+$
    
    正确答案:   ABCD  A,B  A B C  A , B
                      ^A?(\s*|\s*,\s*)?B?(\s*|\s*,\s*)?C?(\s*|\s*,\s*)?D?$

    日期格式:   2012-08-17
   ^\d{4}-\d{2}-\d{2}$
   ^\d{4}(-\d{2}){2}$

  email   :          ^\w+@\w+(\.(com|cn|net))+$ 
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值