表 1:定位元字符

元字符

说明

^

使表达式定位至一行的开头

$

使表达式定位至一行的末尾

表 2:量词或重复操作符

量词

说明

*

匹配 0 次或更多次

?

匹配 0 次或 1 次

+

匹配 1 次或更多次

{m}

正好匹配 m 次

{m,}

至少匹配 m 次

{m, n}

至少匹配 m 次但不超过 n 次

表 3:预定义的 POSIX 字符类

字符类

说明

[:alpha:]

字母字符

[:lower:]

小写字母字符

[:upper:]

大写字母字符

[:digit:]

数字

[:alnum:]

字母数字字符

[:space:]

空白字符(禁止打印),如回车符、换行符、竖直制表符和换页符

[:punct:]

标点字符

[:cntrl:]

控制字符(禁止打印)

[:print:]

可打印字符

表 4:表达式的替换匹配和分组

元字符

说明

|

替换

分隔替换选项,通常与分组操作符 () 一起使用

( )

分组

将子表达式分组为一个替换单元、量词单元或后向引用单元(参见“后向引用”部分)

[char]

字符列表

表示一个字符列表;一个字符列表中的大多数元字符(除字符类、^ 和 - 元字符之外)被理解为文字

表 5:REGEXP_LIKE 操作符

语法

说明

REGEXP_LIKE(source_string, pattern

[, match_parameter])

source_string 支持字符数据类型(CHAR、VARCHAR2、CLOB、NCHAR、NVARCHAR2 和 NCLOB,但不包括 LONG)。pattern 参数是正则表达式的另一个名称。match_parameter 允许可选的参数(如处理换行符、保留多行格式化以及提供对区分大小写的控制)。

表 6:REGEXP_INSTR 函数

语法

说明

REGEXP_INSTR(source_string, pattern

[, start_position

[, occurrence

[, return_option

[, match_parameter]]]])

该函数查找 pattern ,并返回该模式的第一个位置。您可以随意指定您想要开始搜索的 start_position。 occurrence 参数默认为 1,除非您指定您要查找接下来出现的一个模式。return_option 的默认值为 0,它返回该模式的起始位置;值为 1 则返回符合匹配条件的下一个字符的起始位置。

表 7: 5 位数字加 4 位邮政编码表达式的说明

语法

说明

必须匹配的空白

[:digit:]

POSIX 数字类

]

字符列表的结尾

{5}

字符列表正好重复出现 5 次

(

子表达式的开头

-

一个文字连字符,因为它不是一个字符列表内的范围元字符

[

字符列表的开头

[:digit:]

POSIX [:digit:]类

[

字符列表的开头

]

字符列表的结尾

{4}

字符列表正好重复出现 4 次

)

结束圆括号,结束子表达式

?

? 量词匹配分组的子表达式 0 或 1 次,从而使得 4 位代码可选

$

定位元字符,指示行尾

表 8:REGEXP_SUBSTR 函数

语法

说明

REGEXP_SUBSTR(source_string, pattern

[, position [, occurrence

[, match_parameter]]])

REGEXP_SUBSTR 函数返回匹配模式的子字符串。

表 9: REGEXP_REPLACE 函数

语法

说明

REGEXP_REPLACE(source_string, pattern

[, replace_string [, position

[,occurrence, [match_parameter]]]])

该函数用一个指定的 replace_string 来替换匹配的模式,从而允许复杂的“搜索并替换”操作。

表 10:后向引用元字符

元字符

说明

\digit

反斜线

紧跟着一个 1 到 9 之间的数字,反斜线匹配之前的用括号括起来的第 digit 个子表达式。

(注意:反斜线在正则表达式中有另一种意义,取决于上下文,它还可能表示 Escape 字符。

表 11:模式交换正则表达式的说明

正则表达式项目

说明

(

第一个子表达式的开头

.

匹配除换行符之外的任意单字符

*

重复操作符,匹配之前的 . 元字符 0 到 n 次

)

第一个子表达式的结尾;匹配结果在 \1

中获取(在这个例子中,结果为 Ellen。)

必须存在的空白

(

第二个子表达式的开头

.

匹配除换行符之外的任意单个字符

*

重复操作符,匹配之前的 . 元字符 0 到 n 次

)

第二个子表达式的结尾;匹配结果在 \2

中获取(在这个例子中,结果为 Hildi。)

空白

(

第三个子表达式的开头

.

匹配除换行符之外的任意单字符

*

重复操作符,匹配之前的 . 元字符 0 到 n 次

)

第三个子表达式的结尾;匹配结果在 \3

中获取(在这个例子中,结果为 Smith。)

表 12:社会保险号码正则表达式的说明

正则表达式项目

说明

^

行首字符(正则表达式在匹配之前不能有任何前导字符。)

(

开始子表达式并列出用 | 元字符分开的可替换选项

[

字符列表的开头

[:digit:]

POSIX 数字类

]

字符列表的结尾

{3}

字符列表正好重复出现 3 次

-

连字符

[

字符列表的开头

[:digit:]

POSIX 数字类

]

字符列表的结尾

{2}

字符列表正好重复出现 2 次

-

另一个连字符

[

字符列表的开头

[:digit:]

POSIX 数字类

]

字符列表的结尾

{4}

字符列表正好重复出现 4 次

|

替换元字符;结束第一个选项并开始下一个替换表达式

[

字符列表的开头

[:digit:]

POSIX 数字类

]

字符列表的结尾

{9}

字符列表正好重复出现 9 次

)

结束圆括号,结束用于替换的子表达式组

$

定位元字符,指示行尾;没有额外的字符能够符合模式

tsql 正则_sql里的正则表达式相关推荐

  1. tsql 正则_使用正则表达式匹配tsql注释语句

    使用正则表达式匹配tsql注释语句 让我们来看一些例子: 复制代码 代码如下: --获取表的count信息 select count(*) from T with(nolock) --获取特定值的co ...

  2. linux获取中括号内容,shell里使用正则表达式提取括号中的内容

    遇到个websphere MQ监控的问题,希望通过命令行的方式获取到MQ的一些状态: 1. su - mqm 使用mqm用户 2. dspmq 最简单的命令,查看队列控制器的状态: $ dspmq - ...

  3. java正则匹配换行_正则表达式怎么匹配换行符

    正则表达式匹配文本中包含换行符等空白字符如何匹配 使用[\s\S]匹配任意字符,而不是使用"." 使用s单行修饰模式,例:$pattern = '#abc.*?def#s'; // ...

  4. java正则匹配ip_IP地址正则表达式匹配方法

    这篇文章主要介绍了 IP地址正则表达式匹配方法的相关资料,需要的朋友可以参考下 正则表达式(Regular Expression,在代码中常简写为regex.regexp或RE)是计算机科学的一个概念 ...

  5. java 正则 空格_java 正则匹配空格字符串 正则表达式截取字符串

    java 正则匹配空格字符串 正则表达式截取字符串 需求:从一堆sql中取出某些特定字符串: 比如配置的sql语句为:"company_code = @cc and project_id = ...

  6. tsql 正则_T-SQL中的SQL Server正则表达式

    如果有人对将正则表达式与CLR一起使用感兴趣,那么这里是一个解决方案.下面的函数(C#.net 4.5)如果模式匹配则返回1,如果模式不匹配则返回0.我用它来标记子查询中的行.SQLfunction属 ...

  7. php正则中不支持g修饰符吗,Pattern Modifiers – 规则表达式的修饰符(转载)发现PHP里有些正则表达式的应用和PERL里的不一样。。所…-PHP教程,PHP应用...

    pattern modifiers – 规则表达式的修饰符 下面是当前规则表达式里可用的修饰. 括号内的名字是那些修饰符的内部 pcre 名字. i (pcre_caseless) 如果设置了这个修饰 ...

  8. Golang正则笔记 :使用正则表达式处理题库文本

    前言 由于企业内部的一些考试需要,有些同事要时常通过一个word格式的题库文件来查询相应题目,但在手机上用word进行查询,总觉得操作上很不方便.借着这个契机,应用Golang和Kotlin开发了一个 ...

  9. js正则贪婪模式_C# 正则表达式贪婪模式案例

    案例一. 如 "acbacb"  正则  "a.*?b" 只会取到第一个"acb" 原本可以全部取到但加了限定符后,只会匹配尽可能少的字符 ...

最新文章

  1. overlapped I/O的学习笔记
  2. spss数据分析可以被人工智能替换吗
  3. 最长回文子串 hihocode 1032 hdu 3068
  4. 事务和分布式事务解释
  5. linux mdev -s没有运行,mdev详解
  6. webpack打包压缩混淆_细说webpack系列 3. webpack-cli 零配置打包
  7. 个人练习-jq 鼠标移上移出查看图片(放大)提示
  8. source insight 无法查找与跳转和恢复默认设置
  9. Spark源码分析之一:Job提交运行总流程概述
  10. “头号电脑黑客” 凯文.米特尼克 与 中国台湾的”电脑鬼才“陈盈豪
  11. 汽车行业常见术语英文缩写(持续更新...)
  12. C51单片机行人过马路按钮控制信号灯及Protues仿真(有缺陷)
  13. 《大明王朝的七张面孔》——海瑞
  14. 怎么释放mysql连接_数据库连接释放问题
  15. 2022中国汽车测试及质量监控博览会邀请函
  16. HTML+CSS+Javascript简易记账本(localStorage)
  17. Emlog主题:秒拍网主题模板源码
  18. C#连接数据库代码示例
  19. SU-03离线语音模块的配置使用
  20. A Heterogeneous Graph Neural Model for Cold-start Recommendation(SIGIR20)

热门文章

  1. 不满 C 的繁琐,崛起的 Python 正在蚕食编程语言界!
  2. Java 8 终于支持 Docker !
  3. Java 并没有死!
  4. 5 天 6 亿 3000 万数据泄露,怎么做才能跑赢骗子?
  5. 快播王欣再做视频;Apple Watch 非法雇佣学生;ofo 进军电单车 | 极客头条
  6. 微软“作死”Windows
  7. PHP 7.3 比 PHP 7.0 快 22%,即将进入特性冻结阶段
  8. 昔日最有前途的 Java 最终还是败给了晚辈 Python
  9. 偷窥、报复、歧视,Google 为何频发性骚扰事件?
  10. 史上最大漏洞危机:影响所有 iPhone、Android、PC 设备,修复困难重重