• 正则表达式REGEXP


    REGEXP在列值内进行匹配,只要被匹配的文本在列值中出现,相应行就能被返回,但是like只能匹配整个列

    1.1 or匹配

    | 为正则表达式的OR操作符,表示匹配其中之一

    e.g.

    select prod_name from products

    where prod_name REGEXP '1000|2000'

    1.2匹配几个字符之一

     [] 是另外一种形式的OR语句,[123]匹配字符1、2、3

    1.3匹配范围

    - 用来定义一个范围 [0-9] 匹配数字0到9;[a-z]匹配26个小写字母

    1.4匹配特殊字符

    . [] | - 都是特殊字符,为了匹配这些特殊字符,要用\为前导,\-表示查找-,\.表示查找.,\表示匹配

    \也用来引用元字符(具有特殊意义的字符)

    e.g.元字符

    \f  换页

    \n  换行

    \r  回车

    \t  制表

    \v  纵向制表

    1.5匹配字符类

    字符类

    [:alnum:]  任意字母和数字,同[a-zA-Z0-9]

    [:alpha:]  任意字符,同[a-zA-Z]

    [:blank:]  空格和制表,同[\t]

    [:cntrl:]  ASCII控制字符,ASCII 0到31和127

    [:digit:]  任意数字

    [:graph:]  与[:print:]相同,但不包含空格

    [:lower:]  任意小写字母

    [:print:]  任意可打印字符

    [:punct:]  既不在[:alnum:]也不在[:cntrl:]中的任意字符

    [:space:]  包括空格在内的任意空白字符

    [:upper:]  任意大写字符

    [:xdigit:]  任意十六进制数字

    7.6匹配多个实例

    重复元字符

    *  0或多个匹配

    +  1个或多个匹配,等于{1,}

    ?  0个或1个匹配,等于{0,1}

    {n}  指定数目的匹配

    {n,}  不少于指定数目的匹配

    {n,m}  匹配数目的范围,m不超过255

    7.7定位符

     定位元字符

    ^  文本的开始

    $  文本的结尾

    [[:<:]]  词的开始

    [[:>:]]  词的结束

  • 相关阅读:
    原根
    FFT
    bzoj3991[SDOI2015]寻宝游戏
    bzoj3990[SDOI2015]排序
    序列自动机
    bzoj4032[HEOI2015]最短不公共子串
    2015.8.28 字符串
    bzoj2821作诗
    bzoj2741【FOTILE模拟赛】L
    一个牛人给java初学者的建议
  • 原文地址:https://www.cnblogs.com/zhu-tingting/p/7536920.html
Copyright © 2020-2023  润新知