• GBase 8c V3.0.0数据类型——POSIX正则表达式


    描述:正则表达式是一个字符序列,它是定义一个串集合(一个正则集)的缩写。如果一个串属于正则表达式描述的正则集时,则称该串匹配该正则表达式。POSIX正则表达式提供了比LIKE和SIMILAR TO操作符更强大的含义。表1列出了所有可用于POSIX正则表达式模式匹配的操作符。

    表 1 正则表达式匹配操作符

    操作符

    描述

    例子

    ~

    匹配正则表达式,大小写敏感

    'thomas' ~ '.*thomas.*'

    ~*

    匹配正则表达式,大小写不敏感

    'thomas' ~* '.*Thomas.*'

    !~

    不匹配正则表达式,大小写敏感

    'thomas' !~ '.*Thomas.*'

    !~*

    不匹配正则表达式,大小写不敏感

    'thomas' !~* '.*vadim.*'

    匹配规则:

    a. 与LIKE不同,正则表达式允许匹配串里的任何位置,除非该正则表达式显式地挂接在串的开头或者结尾。

    b. 除了上文提到的元字符外,POSIX正则表达式还支持下列模式匹配元字符,如表2所示。

    表 2 元字符及其含义

    元字符

    含义

    ^

    表示串开头的匹配

    $

    表示串末尾的匹配

    .

    匹配任意单个字符

    正则表达式函数:

    POSIX正则表达式支持下面函数。

    n substring(string from pa...函数提供了抽取一个匹配POSIX正则表达式模式的子串的方法。

    n regexp_count(string tex...函数提供了获取匹配POSIX正则表达式模式的子串数量的功能。

    n regexp_instr(string tex...函数提供了获取匹配POSIX正则表达式模式子串位置的功能。

    n regexp_substr(string te...函数提供了抽取一个匹配POSIX正则表达式模式的子串的方法。

    n regexp_replace(string, p...函数提供了将匹配POSIX正则表达式模式的子串替换为新文本的功能。

    n regexp_matches(string te...函数返回一个文本数组,该数组由匹配一个POSIX正则表达式模式得到的所有被捕获子串构成。

    n regexp_split_to_table(st...函数把一个POSIX正则表达式模式当作一个定界符来分离一个串。

    n regexp_split_to_array(st...和regexp_split_to_table类似,是一个正则表达式分离函数,不过它的结果以一个text数组的形式返回

    正则表达式分离函数会忽略零长度的匹配,这种匹配发生在串的开头或结尾或者正好发生在前一个匹配之后。这和正则表达式匹配的严格定义是相悖的,后者由regexp_matches实现,但是通常前者是实际中最常用的行为。

  • 相关阅读:
    永磁无刷直流电机(无框力矩电机)电流和速度控制器的设计
    nginx+apach+数据恢复+apk小练习hunan
    php公用方法
    定制.NET 6.0的依赖注入
    【unity3D】如何修改相机的默认视角
    AndroidX App Startup 介绍及使用
    L16物联网ARM开发--开发环境搭建及平台及GPIO口操作平台介绍(day2、3)
    并发编程CompletableFuture用法
    浅析大型IM即时通讯系统开发难度
    神经网络算法通俗解释,神经网络属于什么算法
  • 原文地址:https://blog.csdn.net/futianxia061112/article/details/125412140