当前位置: 首页 > news >正文

DB2实现正则表达式

DB2实现正则表达式

功能描述

db2 11.1 及以上版本支持正则表达式,但是db2 10.5及以下版本不支持正则表达式,需要手工创建正则表达式函数。

安装与卸载步骤

================================================================================
== README.txt
==
== 2010-07-30
== IBM IMTE - Project Avalanche
==
== Author: Alexandre Grancher
==
================================================================================This file describes the set of instructions to follow to deploy or to re-deploy
the DB2 regular expressions package.Context
-------
Oracle gives the ability to its users to use regular expresssions functions to 
perform pattern matching directly in their SQL statements.DB2 does not do that natively. Therefore, we have developped a JAVA class to 
implement an API which does pattern matching.
DB2 uses JAVA routines to bind with the implemented JAVA functions.Enablement
----------1- Save attached db2_regex.zip file to a new folder on the hard disk for example to C:\avalanche
2- Extract all files from the zip file to C:\avalanche\db2_regex
3- Open C:\avalanche\db2_regex\scripts\sql\db2_regex_functions.sql.
4- Edit the script to suit your environment, you will need to :4.1- On the first line, change the database name from DB2MIGR to whatever database you are using4.2- On the second line, you will need to change the directory name. If you are using unix the syntax should be something like : CALL SQLJ.INSTALL_JAR('file:/tmp/avalanche/db2_regex/lib/db2_regex.jar', db2_regex);5- In a DB2 command line processor window, run : \>db2 connect to <my_db> user <uid> using <pwd>\>db2 set current schema='REGEXP'\>db2 -td@ -vf C:\avalanche\db2_regex\scripts\sql\db2_regex_functions.sqlIf you have already deployed the package and you want to deploy it again (for 
instance you have modified the JAVA code and you want to try the updated code),
then consider the following set of instructions.1- Extract the zip file into C:\avalanche\db2_regex
From a db2 command window :
2- db2 connect t to <my_db> user <uid> using <pwd>
3- db2 set current schema='REGEXP'
4- db2 drop function REGEXP_LIKE
5- db2 drop function REGEXP_REPLACE
6- db2 drop function REGEXP_SUBSTR
7- db2 drop function REGEXP_INSTR
8- db2 call SQLJ.REMOVE_JAR(db2_regex)
9- db2stop force
10- db2start
11- db2 connect to <my_db> user <uid> using <pwd>
12- db2 set current schema='REGEXP'
13- db2 -td@ -f C:\avalanche\db2_regex\scripts\sql\db2_regex_functions.sql
14- Make sure that no error was raised at any point.API
---The API to the 4 methods is as follows, they closely follow the syntax for the 
Oracle functions defined in http://www.regular-expressions.info/oracle.html.INTEGER REGEXP_LIKE(SOURCE VARCHAR(3000), REGEX VARCHAR(512), MODE VARCHAR(3))VARCHAR(3000) REGEXP_REPLACE(SOURCE VARCHAR(3000), REGEX VARCHAR(512), REPLACEMENT VARCHAR(3000), POSITION INTEGER,OCCURRENCE INTEGER,MODES VARCHAR(3))VARCHAR(3000) REGEXP_SUBSTR(SOURCE VARCHAR(3000),REGEX VARCHAR(512),POSITION INTEGER,OCCURRENCE INTEGER,MODES VARCHAR(3))INTEGER REGEXP_INSTR(SOURCE VARCHAR(3000),REGEX VARCHAR(512),POSITION INTEGER,OCCURRENCE INTEGER,ROPT INTEGER,MODES VARCHAR(3))Further details of each of the parameters passed to the above functions can 
used can be found as Java documentation in 
C:\avalanche\db2_regex\doc\index.html.Examples
--------select ID from REGEXP.REGEXP_STRINGS where REGEXP_LIKE(STRING, '^.EF[ ]+SAVEALIAS[ ]+[0-9]+', 'c') > 0select ID from REGEXP.REGEXP_STRINGS where REGEXP_REPLACE(STRING, '^.EF[]+SAVEALIAS[ ]+[0-9]+', 'XX', 1, 1, 'c')='XX'select ID from REGEXP.REGEXP_STRINGS where REGEXP_SUBSTR(STRING, '^.EF[ ]+SAVEALIAS[ ]+[0-9]+', 1, 1, 'c')='DEF SAVEALIAS 2210'select ID from REGEXP.REGEXP_STRINGS where REGEXP_INSTR(STRING, '^.EF[ ]+SAVEALIAS[ ]+[0-9]+',1, 1, 1, 'c') > 0---------------------------------

常用正则表达式

- 手机规则:规则:手机号以1[3|4|5|6|7|8|9]开头,位数为11位数字示例:13012345678表达式:^[1][3,4,5,6,7,8,9][0-9]{9}$- 电话规则:电话号码可以存在3~4位区号,使用“-”分隔,后面为7~8位数字;示例:有区号:010-12345678  无区号:12345678正则表达式:^([0-9]{3,4}-)?[0-9]{7,8}$- 身份证简单规则:15位或18位数字,或17位数字+大写字母X,其他规则自行调整;正则表达式:(^\d{15}$)|(^\d{17}(\d|X)$)

下载地址

https://download.csdn.net/download/huryer/88101372?spm=1001.2014.3001.5501

相关文章:

DB2实现正则表达式

DB2实现正则表达式 功能描述 db2 11.1 及以上版本支持正则表达式&#xff0c;但是db2 10.5及以下版本不支持正则表达式&#xff0c;需要手工创建正则表达式函数。 安装与卸载步骤 README.txt2010-07-30IBM IMTE - Project AvalancheAuthor: Alexandre GrancherThis file des…...

CASS数据带属性转GIS的shp数据教程

一、数据&#xff1a;DWG文件中含有JZD&#xff08;宗地层&#xff09;&#xff0c;JZP&#xff08;界址点层&#xff09;&#xff0c;其中JZP中含有界址点号&#xff0c;实现JZD层转成ZD的shp数据&#xff1b;JZP转成JZD点的shp数据&#xff0c;并带出界址点号。 二、实现原理…...

Jenkins配置自动化构建的几个问题

在创建构建任务时&#xff0c;填写git远程仓库地址时&#xff0c;出现以下报错 解决此报错先排查一下linux机器上的git版本 git --version 如果git 版本过低&#xff0c;可能会导致拉取失败&#xff0c;此时需要下载更高的git版本。 参考 Git安装 第二个解决办法报错信息中…...

ubuntu 命令调节显示器亮度

1.显示器名字 xrandr -q | grep " connected" HDMI-0 connected primary 1920x108000 (normal left inverted right x axis y axis) 527mm x 297mm DP-4 connected 1920x108019200 (normal left inverted right x axis y axis) 527mm x 297mm 2.调节亮度 xrandr --ou…...

打卡力扣题目七

#左耳听风 ARST 打卡活动重启# 目录 一、题目 二、解题方法一 三、解题方法二 关于 ARTS 的释义 —— 每周完成一个 ARTS&#xff1a; ● Algorithm: 每周至少做一个 LeetCode 的算法题 ● Review: 阅读并点评至少一篇英文技术文章 ● Tips: 学习至少一个技术技巧 ● Share:…...

【EI/SCOPUS会议征稿】第三届检测技术与自动化工程国际学术会议 (TTAE 2023)

第三届检测技术与自动化工程国际学术会议 (TTAE 2023)原定将于2023年9月15-17日在中国西安召开。 检测技术与自动化工程国际学术会议将每年举行一次&#xff0c;旨在将“检测技术”和“自动化工程”等学术领域的学者、专家、研发者、技术人员聚集到一个学术交流的平台&#xf…...

时序预测 | Python实现NARX-DNN空气质量预测

时序预测 | Python实现NARX-DNN空气质量预测 目录 时序预测 | Python实现NARX-DNN空气质量预测效果一览基本介绍研究内容程序设计参考资料效果一览 基本介绍 时序预测 | Python实现NARX-DNN空气质量预测 研究内容 Python实现NARX-DNN空气质量预测,使用深度神经网络对比利时空气…...

华为数字化转型之道-读书笔记1

第一章 数字化转型&#xff0c;华为的战略选择 1. 数字化转型是企业的必答题 1.1 解决时代难题&#xff1a;“鲍莫尔成本病” “体验变流量&#xff0c;流量变收入”是其常见的商业模式。数字化平台通过“作业即记录、记录及数据”的方式&#xff0c;能给企业带来很多好处&a…...

环形链表 II(JS)

环形链表 II 题目 给定一个链表的头节点 head &#xff0c;返回链表开始入环的第一个节点。 如果链表无环&#xff0c;则返回 null。 如果链表中有某个节点&#xff0c;可以通过连续跟踪 next 指针再次到达&#xff0c;则链表中存在环。 为了表示给定链表中的环&#xff0c;…...

【字节三面】41. 缺失的第一个正数

41. 缺失的第一个正数 解题思路 在原数组上进行操作 如果数字是2 将其放在索引为1的位置上数字x 放在索引为x - 1的位置上对于长度为n的数组 其中没有出现的最小正整数只能在[1,n 1]引入如果1 - n 这些数都出现了 那么答案就是n 1如果都没有出现完全 那么答案就在[1,n]中没…...

Linux echo命令与反引号、重定向符号以及管道符

echo echo命令echo结合反引号echo结合重定向符echo结合管道符 echo命令 Linux中的echo命令用于在终端输出指定的文本内容或变量值。 基本语法如下&#xff1a; echo [选项] [字符串]常用选项包括&#xff1a; -e&#xff1a;启用特殊字符的解析&#xff0c;例如\n表示换行符…...

HTML基础知识点总结

目录 1.HTML简介 2.HTML基础结构 主要字符&#xff1a; 3.基础知识 &#xff08;一&#xff09;p标签 &#xff08;二&#xff09;hr标签 &#xff08;三&#xff09;尖角号 &#xff08;四&#xff09;版权号 (五)div和span div span (六)列表 &#xff08;1&…...

VS附加到进程调试

操作&#xff1a; 要附加到进程中调试外部可执行文件&#xff0c;您需要使用Visual Studio的“调试附加”功能。以下是附加到进程中调试外部可执行文件的步骤&#xff1a; 打开您要调试的源代码文件或可执行文件。打开Visual Studio。选择“调试”菜单&#xff0c;然后选择“…...

基于深度学习的高精度狗狗检测识别系统(PyTorch+Pyside6+YOLOv5模型)

摘要&#xff1a;基于深度学习的高精度狗狗检测识别系统可用于日常生活中检测与定位120类狗狗目标&#xff0c;利用深度学习算法可实现图片、视频、摄像头等方式的狗狗目标检测识别&#xff0c;另外支持结果可视化与图片或视频检测结果的导出。本系统采用YOLOv5目标检测模型训练…...

从互联网到云时代,Apache RocketMQ 是如何演进的?

作者&#xff1a;隆基 2022 年&#xff0c;RocketMQ 5.0 的正式版发布。相对于 4.0 版本而言&#xff0c;架构走向云原生化&#xff0c;并且覆盖了更多业务场景。 消息队列演进史 操作系统、数据库、中间件是基础软件的三驾马车&#xff0c;而消息队列属于最经典的中间件之一…...

XML (可扩展标记语言)

目录 一、概念 二. 使用&#xff1a; 1. 基本语法&#xff1a; 2. 组成部分&#xff1a; &#xff08;1&#xff09;文档声明 &#xff08;2&#xff09; 指令(了解)&#xff1a;结合css &#xff08;3&#xff09; 标签&#xff1a;标签名称自定义 &#xff08;4&#xff09…...

socket()、bind()、listen()、htons()

socket() socket() 是一个系统调用函数&#xff0c;用于创建一个套接字&#xff08;socket&#xff09;&#xff0c;通过该套接字进行网络通信。在这段代码中&#xff0c;socket() 函数被用于创建一个本地套接字。 具体来说&#xff0c;这是 socket() 在代码中的使用方式&…...

提升开发效率,Lombok的链式编程和构建模式

目录 链式编程 定义 代码示例 ​编辑 Accessors(chaintrue) 开启链式编程 ​编辑 Accessors(chain true,fluent true) 去除set和get 构建模式 定义 代码示例 ​编辑 踩坑 Singular 定义 代码示例 踩坑默认值情况 ​编辑 With 定义 代码示例 链式编程 定义 链…...

DuDuTalk:AI语音工牌如何帮助教培公司高效管理课程顾问团队

近年来&#xff0c;随着人工智能的快速发展&#xff0c;越来越多的公司开始利用AI技术来提高工作效率和管理效果。在教育培训行业中&#xff0c;课程顾问团队的管理对于公司的运营和发展至关重要。 而在实际管理中&#xff0c;受教培人员素质参差不齐&#xff0c;能力差异大&a…...

C语言——静态库和动态库的创建和使用

使用库函数是源码的一种保护 库函数其实不是新鲜的东西,我们一直都在用,比如C库。我们执行pringf() 这个函数的时候,就是调用C库的函数. 下面记录静态库和动态库的生成和使用. 静态库:libxxx.a 动态库:libxxx.so 静态库: 在程序编译的时候,将库编译进可执行程序中, 运行的…...

【网络】每天掌握一个Linux命令 - iftop

在Linux系统中&#xff0c;iftop是网络管理的得力助手&#xff0c;能实时监控网络流量、连接情况等&#xff0c;帮助排查网络异常。接下来从多方面详细介绍它。 目录 【网络】每天掌握一个Linux命令 - iftop工具概述安装方式核心功能基础用法进阶操作实战案例面试题场景生产场景…...

应用升级/灾备测试时使用guarantee 闪回点迅速回退

1.场景 应用要升级,当升级失败时,数据库回退到升级前. 要测试系统,测试完成后,数据库要回退到测试前。 相对于RMAN恢复需要很长时间&#xff0c; 数据库闪回只需要几分钟。 2.技术实现 数据库设置 2个db_recovery参数 创建guarantee闪回点&#xff0c;不需要开启数据库闪回。…...

python爬虫:Newspaper3k 的详细使用(好用的新闻网站文章抓取和解析的Python库)

更多内容请见: 爬虫和逆向教程-专栏介绍和目录 文章目录 一、Newspaper3k 概述1.1 Newspaper3k 介绍1.2 主要功能1.3 典型应用场景1.4 安装二、基本用法2.2 提取单篇文章的内容2.2 处理多篇文档三、高级选项3.1 自定义配置3.2 分析文章情感四、实战案例4.1 构建新闻摘要聚合器…...

关于 WASM:1. WASM 基础原理

一、WASM 简介 1.1 WebAssembly 是什么&#xff1f; WebAssembly&#xff08;WASM&#xff09; 是一种能在现代浏览器中高效运行的二进制指令格式&#xff0c;它不是传统的编程语言&#xff0c;而是一种 低级字节码格式&#xff0c;可由高级语言&#xff08;如 C、C、Rust&am…...

汇编常见指令

汇编常见指令 一、数据传送指令 指令功能示例说明MOV数据传送MOV EAX, 10将立即数 10 送入 EAXMOV [EBX], EAX将 EAX 值存入 EBX 指向的内存LEA加载有效地址LEA EAX, [EBX4]将 EBX4 的地址存入 EAX&#xff08;不访问内存&#xff09;XCHG交换数据XCHG EAX, EBX交换 EAX 和 EB…...

大学生职业发展与就业创业指导教学评价

这里是引用 作为软工2203/2204班的学生&#xff0c;我们非常感谢您在《大学生职业发展与就业创业指导》课程中的悉心教导。这门课程对我们即将面临实习和就业的工科学生来说至关重要&#xff0c;而您认真负责的教学态度&#xff0c;让课程的每一部分都充满了实用价值。 尤其让我…...

项目部署到Linux上时遇到的错误(Redis,MySQL,无法正确连接,地址占用问题)

Redis无法正确连接 在运行jar包时出现了这样的错误 查询得知问题核心在于Redis连接失败&#xff0c;具体原因是客户端发送了密码认证请求&#xff0c;但Redis服务器未设置密码 1.为Redis设置密码&#xff08;匹配客户端配置&#xff09; 步骤&#xff1a; 1&#xff09;.修…...

招商蛇口 | 执笔CID,启幕低密生活新境

作为中国城市生长的力量&#xff0c;招商蛇口以“美好生活承载者”为使命&#xff0c;深耕全球111座城市&#xff0c;以央企担当匠造时代理想人居。从深圳湾的开拓基因到西安高新CID的战略落子&#xff0c;招商蛇口始终与城市发展同频共振&#xff0c;以建筑诠释对土地与生活的…...

适应性Java用于现代 API:REST、GraphQL 和事件驱动

在快速发展的软件开发领域&#xff0c;REST、GraphQL 和事件驱动架构等新的 API 标准对于构建可扩展、高效的系统至关重要。Java 在现代 API 方面以其在企业应用中的稳定性而闻名&#xff0c;不断适应这些现代范式的需求。随着不断发展的生态系统&#xff0c;Java 在现代 API 方…...

华为OD最新机试真题-数组组成的最小数字-OD统一考试(B卷)

题目描述 给定一个整型数组,请从该数组中选择3个元素 组成最小数字并输出 (如果数组长度小于3,则选择数组中所有元素来组成最小数字)。 输入描述 行用半角逗号分割的字符串记录的整型数组,0<数组长度<= 100,0<整数的取值范围<= 10000。 输出描述 由3个元素组成…...