`
xingyx
  • 浏览: 60952 次
  • 性别: Icon_minigender_2
社区版块
存档分类
最新评论
  • 52p9_xu: 感谢分享,本人最近闲来无事也想搭建一个 全注解的SSH框架。不 ...
    SSH注解框架

Oracle 正则表达式函数-REGEXP_SUBSTR 使用例子

阅读更多

原文出处:http://hi.baidu.com/wangzhiqing999/item/885ffd235103875ac28d5928 ,感谢作者的分享。

Oracle 正则表达式函数-REGEXP_SUBSTR 使用例子

5个参数

第一个是输入的字符串

第二个是正则表达式

第三个是标识从第几个字符开始正则表达式匹配。(默认为1)

第四个是标识第几个匹配组。(默认为1)

第五个是是取值范围:

i:大小写不敏感;

c:大小写敏感;

n:点号 . 不匹配换行符号;

m:多行模式;

x:扩展模式,忽略正则表达式中的空白字符。

 

全部测试数据

SQL> select * from test_reg_substr;

A

-----------------------------------

ABC123XYZ

ABC123XYZ456

<Name>Edward</Name>

 

检索中间的数字

SQL> SELECT

 2    REGEXP_SUBSTR(a,'[0-9]+')

 3  FROM

 4    test_reg_substr

 5  WHERE

 6    REGEXP_LIKE(a, '[0-9]+');

REGEXP_SUBSTR(A,'[0-9]+')

---------------------------------

123

123

 

检索中间的数字(从第一个字母开始匹配,找第2个匹配项目)

SQL> SELECT

 2    NVL(REGEXP_SUBSTR(a,'[0-9]+',1, 2), '-') AS a

 3  FROM

 4    test_reg_substr

 5  WHERE

 6    REGEXP_LIKE(a, '[0-9]+');

A

------------------------------------------------------

-

456

 

取得“字符集合”

SQL> SELECT

 2    REGEXP_SUBSTR(a, '\w+')

 3  FROM

 4    test_reg_substr

  5  WHERE

 6    REGEXP_LIKE(a, '\w+');

REGEXP_SUBSTR(A,'\W+')

-------------------------------

ABC123XYZ

ABC123XYZ456

Name

 

取得“字符集合”(从第一个字母开始匹配,找第2个匹配项目)

SQL> SELECT

 2    NVL(REGEXP_SUBSTR(a, '\w+',1, 2), '-') AS a

 3  FROM

 4    test_reg_substr

  5  WHERE

 6    REGEXP_LIKE(a, '\w+');

 A

---------------------------------------------------

 -

-

Edward

分享到:
评论

相关推荐

    Oracle通过正则表达式分割字符串 REGEXP_SUBSTR的代码详解

    REGEXP_SUBSTR函数格式如下: function REGEXP_SUBSTR(string, pattern, position, occurrence, modifier) string :需要进行正则处理的字符串 pattern :进行匹配的正则表达式 position :起始位置,从第几个...

    Oracle正则表达式函数全面解析

    ### Oracle正则表达式函数全面解析 #### 一、引言 在数据库处理文本数据时,经常需要用到模式匹配。Oracle数据库提供了丰富的正则表达式函数,这些函数可以帮助开发者更高效地进行文本匹配、搜索和替换等操作。本文...

    oracle_10g正则表达式_REGEXP_LIKE_用法

    下面将详细介绍`REGEXP_LIKE`的用法以及如何在Oracle 10g中使用正则表达式进行数据筛选。 ### Oracle 10g正则表达式与`REGEXP_LIKE` Oracle 10g支持多种正则表达式相关的函数,包括但不限于: 1. **`REGEXP_LIKE`...

    Oracle正则表达式详解(用法+实例)

    下面通过具体的例子来演示如何使用这些正则表达式函数: - **查询以 "1" 开头且以 "60" 结尾的长度为 7 的记录**: ```sql SELECT * FROM fzq WHERE REGEXP_LIKE(value, '^1.{5}60$'); ``` - **查询含有数字的...

    Oracle正则表达式函数

    Oracle数据库系统提供了...对于初学者来说,阅读《美河学习在线eimhe.com_Oracle正则表达式函数.pdf》和《美河学习在线eimhe.com_Oracle正则表达式.pdf》这两份资料,将有助于深入理解和掌握Oracle中的正则表达式功能。

    Oracle数据库正则表达式

    同时,正则表达式也可以与其他 Oracle 函数结合使用,例如 substr()、replace()、instr() 等,来实现更加复杂的数据处理任务。 正则表达式是 Oracle 数据库中的一种强大的工具,可以帮助用户快速、高效地处理数据。

    Oracle中的正则表达式

    Oracle中的正则表达式函数提供了强大的字符串处理功能,能够大大提高数据库应用程序的效率和可读性。 正则表达式的基本概念包括: * 元字符和普通字符:元字符是指在正则表达式中表示特殊含义的字符,如"."、"\"、...

    ORACLE正则表达式

    ORACLE 中的正则表达式函数 ------------------------- ORACLE 提供了 4 个函数来使用正则表达式: 1. `regexp_like(x, pattern)`: 当 x 能正确匹配字符串时返回 true。 2. `regexp_instr(x, pattern)`: 在 x 中...

    Oracle正则表达式函数介绍[定义].pdf

    Oracle数据库系统支持正则表达式,这为在SQL查询中进行复杂文本匹配提供了强大的工具。...这就是Oracle正则表达式函数的强大之处,能够处理更复杂、灵活的文本匹配需求,极大地扩展了SQL的查询能力。

    oracle正则表达式

    PDF文件"Oracle正则表达式函数介绍.pdf"很可能详细介绍了这些函数的使用方法、模式语法和实例,而"Oracle_正则表达式.txt"可能包含了更多示例或使用技巧。对于学习和理解Oracle正则表达式,这两个文件都是宝贵的资源...

    Oracle 正则表达式介绍

    3. Oracle 10g中的正则表达式函数: - REGEXP_LIKE:类似于传统的LIKE操作符,但支持更复杂的模式匹配。例如,`REGEXP_LIKE(column, '^[0-9]+$')`将检查列中的值是否只包含数字。 - REGEXP_INSTR:返回子串在目标...

    Oracle分析函数基本概念和语法总结及Regexp_***用法

    Oracle分析函数是数据库管理系统Oracle中的一种高级查询工具,它们用于处理行集,...了解并熟练掌握Oracle分析函数和正则表达式函数,能显著提高在数据库管理和数据分析方面的效率,使得复杂的数据处理变得简单直观。

    Oracle正则表达式函数介绍.rar

    在Oracle中熟练掌握正则表达式函数对于数据处理、数据分析和问题排查至关重要。通过结合这些函数,我们可以构建出高度灵活和精确的查询,从而满足各种复杂的数据检索需求。深入理解这些函数及其应用将显著提高你在...

    Oracle正则表达式

    ### Oracle正则表达式 #### 一、简介 在Oracle 10g版本开始,数据库引入了对正则表达式的支持。正则表达式是一种强大的工具,用于模式匹配和文本处理,可以用来搜索、替换、提取等操作。通过正则表达式,用户可以...

    Oracle正则表达式.pdf

    * `REGEXP_SUBSTR`:用于使用正则表达式提取子字符串 REGEXP_LIKE 函数的语法为: `REGEXP_LIKE (source_string, pattern [, match_parameter] )` 其中 `source_string` 是源字符串,`pattern` 是正则表达式,`...

Global site tag (gtag.js) - Google Analytics