zoukankan      html  css  js  c++  java
  • 正则表达式tips

    在大数据时代的如今,在测试过程中会接触到大量的数据,实现在大量数据中快速查找替换目标数据少不了正则表达式的协助,所以今天整理一下常用的正则表达式。

    一、组成与用途

    正则表达式,是由普通字符(例如a-z)和特殊字符(称为“元字符”)组成。主要可用于进行字符串匹配,实现查找字符串、字符串子串或者对查找字符串进行替换的目的。

          二、语法     

    正则表达式中的字符有普通字符、非打印字符、特殊字符、限定符、定位符等。

    这里主要说明一下限定符、定位符。

    1、限定符

    要求指定字符串出现的次数符合设定的规则。

    *:前面的表达式匹配到零次或者多次

    例如:规则设置为ok*,ok与okkk

    +:匹配前面的子表达式一次或多次

    例如:规则设置为ok+,o不符合,ok与okkk等符合

    ?:匹配一个或零个前面的子表达式,非贪婪

    例如:规则设置为go(od)?,go与good均符合

    {n}: 匹配n次

    例如:o{2},not不符合,但good可以匹配到

    {n,}: 匹配n以及n次以上的字符

    例如:o{2,} 可以匹配到gooooood中的所有o

    {n,m}: 表示匹配最少n次,最多m次,设置一个次数范围

    例如:o{1,3} 可以匹配到gooooood中的前三个o

    2、定位符

    ^:  匹配字符串的起始位置,

    例如:^test,表示匹配以test开头的字符串,如testxy。

    $: 匹配输入字符串的结尾,

    例如:test$表示匹配以test结尾的字符串,如xytest。

    : 匹配一个单词的边界,

    例如Goo,匹配Good的Goo

    B: 匹配单词的非边界位置,

    例如:BGoo,不能匹配Good中的Goo,可以匹配wowGood中的Goo

    注:

    (^[0-9])+ :表示匹配一个或多个数字,相当于d+

    [^[0-9]]+ :表示匹配不含数字的字符串,相当于D+

    三、常用的正则表达式

    1、 字母下划线校验:[A-Za-z0-9_] ,相当于w+

    2、中文:[u4e00-u9fa5]

    3、 Email地址:^w+([-+.]w+)*@w+([-.]w+)*.w+([-.]w+)*$

    4、18位身份证号:^[1-9]d{5}(18|19|([23]d))d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)d{3}[0-9Xx]$

    5、日期格式:^d{4}-d{1,2}-d{1,2}

    6、IP地址:((?:(?:25[0-5]|2[0-4]\d|[01]?\d?\d)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d?\d))

    7、InternetURL:^http://([w-]+.)+[w-]+(/[w-./?%&=]*)?$

  • 相关阅读:
    线性时间排序算法
    【MSSQL】MDF、NDF、LDF文件的含义
    SQL表变量与临时表区别 + 非游标临时表遍历
    SQL Server 备份和还原全攻略
    S​Q​L​_​S​e​r​v​e​r​_​2​0​0​8​定​期​自​动​备​份​详​细​图​解
    Global.asax 文件是什么
    SQL 视图 局部变量 全局变量 条件语句 事务 触发器
    XP禁用了U盘和移动硬盘方法
    java实现 数据结构:链表、 栈、 队列、优先级队列、哈希表
    Mysql 存储过程和函数区别
  • 原文地址:https://www.cnblogs.com/fcc-123/p/12302271.html
Copyright © 2011-2022 走看看