REGEXP 搜索条件和 REGEXP_SUBSTR 函数支持以下语法约定,同时它们假定反斜线为转义字符。而 SIMILAR TO 搜索表达式不支持这些约定。
正则表达式语法 名称和含义
\0 xxx
匹配值为 \0xxx 的字符,其中 xxx 是任何八进制数字序列,0 是零。例如,\0134 匹配反斜线。
\a
匹配报警字符。
\A
用在字符集外部以便匹配字符串的开头。
等效于在字符集外部使用的 ^。
\b
匹配退格字符。
\B
匹配反斜线字符 (\)。
\c X
匹配已命名的控制字符。例如,\cZ 代表 ctrl-Z。
\d
匹配当前归类中的一个数字。例如,以下语句搜索 Contacts.Phone 以查找以 00 结尾的所有电话号码:
SELECT Surname, Surname, City, Phone
FROM Contacts
WHERE Phone REGEXP '\\d{8}00';
\d 既可用在字符类的内部也可用在字符类的外部,等效于 [[:digit:]]。
\D
匹配数字以外的任何字符。它的作用与 \d 正好相反。
\D 既可用在字符类的内部也可用在字符类的外部,等效于 [^[:digit:]]。
在方括号内使用取非速记时请务必谨慎。[\D\S] 与 [^\d\s] 并不相同。后者匹配数字或空格以外的任何字符。所以它匹配 x,但不匹配 8。而前者匹配不是数字或不是空格(满足两个条件之一)的任何字符。因为数字不是空格,空格也不是数字,所以 [\D\S] 可以匹配任何字符、数字、空格或其它字符。
\e
匹配转义字符。
\E 将由 \Q 启动的将元字符视为非元字符这一功能停止。
\f
匹配换页符。
\n
匹配换行符。
\Q
将所有元字符视为非元字符,直到遇到 \E。例如,\Q[$\E 等效于 \[\$。
\r
匹配回车符。
\s
匹配一个被视为白空格的空格或字符。例如,以下语句从 Products.ProductName 中返回名称中至少有一个空格的所有产品名:
SELECT Name
FROM Products
WHERE Name REGEXP '.*\\s.*'
\s 既可用在字符类的内部也可用在字符类的外部,等效于 [[:whitespace:]]。
\S
匹配非白空格字符。它的作用与 \d 正好相反,而等效于 [^[:whitespace:]]。
\S 既可用在字符类的内部也可用在字符类的外部。
在方括号内使用取非速记时请务必谨慎。[\D\S] 与 [^\d\s] 并不相同。后者匹配数字或空格以外的任何字符。所以它匹配 x,但不匹配 8。而前者匹配不是数字或不是空格(满足两个条件之一)的任何字符。因为数字不是空格,空格也不是数字,所以 [\D\S] 可以匹配任何字符、数字、空格或其它字符。
\t
匹配水平制表符。
\v
匹配垂直制表符。
\w
匹配当前归类中的字母字符、数字或下划线。例如,以下语句从 Contacts.Surname 返回长度正好为七个字母数字字符的所有姓:
SELECT Surname
FROM Contacts
WHERE Surname REGEXP '\\w{7}';
\w 既可用在字符类的内部也可用在字符类的外部。
等效于 [[:alnum:]_].。
\W
匹配当前归类中字母字符、数字或下划线以外的任何字符。它的作用与 \w 正好相反,而等效于 [^[:alnum:]_]。
在字符类的内部和外部都可使用此正则表达式
\x hh
匹配值为 0xhh 的字符,其中 hh 最多为两个十六进制数字。例如,\x2D 等效于一个连字符。
等效于 \x{hh}。
\x{ hhh }
匹配值为 0xhhh 的字符,其中 hhh 最多为三个十六进制数字。
\z 和 \Z
匹配字符串结尾处的位置(而非字符)。
等效于 $。
分享到:
相关推荐
本文实例讲述了mysql正则表达式(regexp和rlike)的搜索功能。分享给大家供大家参考,具体如下: 我们知道正则表达式是描述搜索模式的特殊字符串。 它是一个强大的工具,为我们提供一种简洁灵活的方法来识别基于模式...
JavaScript的RegExp类表示正则表达式,而String和RegExp都定义了使用正则表达式进行强大的模式匹配和文本检索与替换的函数。 ECMAScript v3对JavaScript正则表达式进行了标准化。JavaScript 1.2实现了ECMAScript v3...
正则表达式日期校验 正则表达式日期校验 正则表达式日期校验
position :起始位置,从第几个字符开始正则表达式匹配(默认为1) occurrence :标识第几个匹配组,默认为1 modifier :模式(‘i’不区分大小写进行检索;’c’区分大小写进行检索。默认为’c’) SELECT REGEXP_...
教你如何将正则表达式使用在SQL查询中,工作中经常需要,因为用正则表达式查询能更准确的查询出匹配的信息,学Oracle必须要懂得知识点
ORACLE 正则表达式的使用(REGEXP_LIKE REGEXP_INSTR REGEXP_SUBSTR REGEXP_REPLACE)
VBScript 正则表达式详解。详细介绍这则表达式的各种操作方法
主要介绍了Java使用正则表达式提取XML节点内容的方法,结合具体实例形式分析了java针对xml格式字符串的正则匹配相关操作技巧,需要的朋友可以参考下
正则表达式,又称正规表示法、常规表示法(英语:Regular Expression,在代码中常简写为regex、regexp或RE),计算机科学的一个概念。正则表达式使用单个字符串来描述、匹配一系列符合某个句法规则的字符串。在很多...
js 正则表达式 RegExp 好例子
正则表达式处理html文本例子,简单的正则表达式处理,仅供学习。
RegExp对象表示正则表达式,RegExp是正则表达式的缩写,它是对字符串执行模式匹配的强大工具。RegExp对象用于规定在文本中检索的内容。当您检索某个文本时,可以使用一种模式来描述要检索的内容。RegExp就是这种...
在计算机科学中,是指一个用来描述或者匹配一系列符合某个句法规则的字符串的单个字符串。在很多文本编辑器或其他工具里,...正则表达式通常缩写成“regex”,单数有regexp、regex,复数有regexps、regexes、regexen。
正则表达式(英语:Regular Expression,在代码中常简写为regex、regexp或RE)使用单个字符串来描述、匹配一系列符合某个句法规则的字符串搜索模式。搜索模式可用于文本搜索和文本替换。 语法 /正则表达式主体/修饰...
⼀个正则表达式是⼀种从左到右匹配主体字符串的模式。 “Regular expression”这个词⽐较拗⼝,我们常使⽤缩写的术语“regex”或“regexp”。 正则表达式可以从⼀个基础字符串中根据⼀定的匹配模式替换⽂本中的字符...
正则表达式,又称规则表达式,英文名为Regular Expression,在代码中常简写为regex、regexp或RE,是计算机科学的一个概念。...正则表达式是一种文本模式,模式描述在搜索文本时要匹配的一个或多个字符串。
这篇文章主要讲如何使用正则匹配中文字符,中文正则表达式的匹配规则不像其他正则规则一样容易记住,...更多常用正则表达式匹配规则: 英文字母:[a-zA-Z] 数字:[0-9] 匹配中文,英文字母和数字及_: //code from http:
Oracle中使用正则表达式 正则详解正则详解正则详解正则详解正则详解正则详解
RegExp正则表达式
上篇文章给大家介绍了Java正则表达式匹配,替换,查找,切割的方法,接下来,通过本篇文章给大家介绍js 正则匹配、查找与替换,具体内容请看下文。 js 正则匹配、查找与替换 RegExp对象RegExp对象表示正则表达式,它...