在Notepad++中结合使用正则表达式及标记,可以事半功倍

目的:有一份sql代码,我们要提取出所的table name,并且生成drop table [table name];

--------------------------------------------------------
--  DDL for Table CIG_BNF_RMK
--------------------------------------------------------

  CREATE TABLE "DBO"."CIG_BNF_RMK" 
   (	"WF_POLID" VARCHAR2(30 BYTE),"WF_PLangrP" VARCHAR2(20 BYTE),"WF_RMKITM" NUMBER(*,0),"WF_RMKITM9" NVARCHAR2(2000),) SEGMENT CREATION IMMEDIATE 
  PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 
 NOCOMPRESS LOGGING
  STORAGE(INITIAL 65536 NEXT 1048576 mineXTENTS 1 MAXEXTENTS 2147483645
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1
  BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
  TABLESPACE "polyO" ;
--------------------------------------------------------
--  DDL for Table CIG_BNF_RMK_PKG_W1
--------------------------------------------------------

  CREATE GLOBAL TEMPORARY TABLE "DBO"."CIG_BNF_RMK_PKG_W1" 
   (	"WF_POLID" VARCHAR2(30 BYTE),"WF_RMKITM9" NVARCHAR2(120),) ON COMMIT DELETE ROWS ;
--------------------------------------------------------
--  DDL for Table CIG_CLM
--------------------------------------------------------

  CREATE TABLE "DBO"."CIG_CLM" 
   (	"WF_POLID" VARCHAR2(30 BYTE),"WF_CLMNO" VARCHAR2(20 BYTE),"WF_CERTNO" VARCHAR2(20 BYTE),"WF_CONDATE" DATE,"WF_disDATE" DATE,"WF_bnfcODE" VARCHAR2(3 BYTE),"WF_bnfcODE9" NVARCHAR2(120),"WF_CLMTYPE9" VARCHAR2(20 BYTE),"WF_INCAMT" NUMBER(19,2),"WF_PAIdamT" NUMBER(19,"WF_SETDATE" DATE,"WF_PAYMTD" VARCHAR2(50 BYTE),"WF_PAYDATE" DATE,"WF_CLM_STS9" VARCHAR2(10 BYTE),"WF_CCY" VARCHAR2(3 BYTE),) SEGMENT CREATION IMMEDIATE 
  PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 
 NOCOMPRESS LOGGING
  STORAGE(INITIAL 65536 NEXT 1048576 mineXTENTS 1 MAXEXTENTS 2147483645
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1
  BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
  TABLESPACE "polyO" ;

先用Notepad++打开sql文件

Step 1: 菜单 ->[搜索] -> [标记]

(a)查找目标中输入正则表达式

CREATE (GLOBAL TEMPORARY TABLE|TABLE) \"DBO\"\.\"[A-Za-z0-9\_]+\"

(b)选中”标记所在行“

(c)查找模式中选中”正则表达式“

好了,按”查找全部“,看下图(可以看到查找到的行都上了色)

Step 2: 菜单 -> [搜索] -> [书签] -> [复制书签行]

然后,开个新文件,贴上就OK了,如下图(可以看到所有的CREATE TABLE ....行都复制过来了)

太好用了,给Notepad++作者点100个赞

相关文章

正则替换html代码中img标签的src值在开发富文本信息在移动端...
正则表达式
AWK是一种处理文本文件的语言,是一个强大的文件分析工具。它...
正则表达式是特殊的字符序列,利用事先定义好的特定字符以及...
Python界一名小学生,热心分享编程学习。
收集整理每周优质开发者内容,包括、、等方面。每周五定期发...