vs 2012/2013 等工具中,使用正则表达式,查找、替换

有这样一个需求,就是一个文本中,需要找出指定格式的字符串进行指定的替换,当前我的真实需求是,一个sql创建触发器的文本,我需要将所有的 包含 TB_SYS 的表名后面添加一个 “_NEW”字符串!

例如:

     Creating trigger TRG_TB_SYSFILE  替换后 变成 Creating trigger TRG_TB_SYSFILE_NEW

正则表达式:(TB_SYS[^.]+)

替换表达式:$1_NEW

说明:

$0,其中$0表示正则匹配的整个最大字符串值。

$1,表示在查找的表达式中查找到的第一个()指定的字符。

$2,表示在查找的表达式中查找到的第二个()指定的字符。

...

$n,表示在查找的表达式中查找到的第n个()指定的字符。

特别注意:这里替换的时候,只能手动点击一个一个替换,不能全部一次替换!!!

附 图片中实际操作文本:

------------------------------------------
-- Export file for user DZDA            --
-- Created by ym on 2018/1/23, 16:39:02 --
------------------------------------------

set define off
spool dzda_sys_trg.log

prompt
prompt Creating trigger TRG_TB_SYSFILE
prompt ===============================
prompt
create or replace trigger dzda.TRG_TB_SYSFILE
  before insert ON TB_SYSFILE
  for each row
when (new.id is null)
begin
  select SEQ_TB_SYSFILE.nextval into :new.id from dual;
end;
/

prompt
prompt Creating trigger TRG_TB_SYSIPBLACK
prompt ==================================
prompt
create or replace trigger dzda.trg_tb_sysipblack
  before insert ON tb_sysipblack
  for each row
when (new.id is null)
begin
  select seq_tb_sysipblack.nextval into :new.id from dual;
end;
/

prompt
prompt Creating trigger TRG_TB_SYSLOGINLOG
prompt ===================================
prompt
create or replace trigger dzda.trg_tb_sysloginlog
  before insert ON tb_sysloginlog
  for each row
when (new.id is null)
begin
  select seq_tb_sysloginlog.nextval into :new.id from dual;
end;
/

prompt
prompt Creating trigger TRG_TB_SYSLOGOPERATION
prompt =======================================
prompt
create or replace trigger dzda.trg_tb_syslogoperation
  before insert ON tb_syslogoperation
  for each row
when (new.id is null)
begin
  select seq_tb_syslogoperation.nextval into :new.id from dual;
end;
/

prompt
prompt Creating trigger TRG_TB_SYSLOGSETTING
prompt =====================================
prompt
create or replace trigger dzda.trg_tb_syslogsetting
  before insert ON tb_syslogsetting
  for each row
when (new.logid is null)
begin
  select seq_tb_syslogsetting.nextval into :new.logid from dual;
end;
/

prompt
prompt Creating trigger TRG_TB_SYSLOGSETTINGDETAIL
prompt ===========================================
prompt
create or replace trigger dzda.trg_tb_syslogsettingdetail
  before insert ON tb_syslogsettingdetail
  for each row
when (new.id is null)
begin
  select seq_tb_syslogsettingdetail.nextval into :new.id from dual;
end;
/

prompt
prompt Creating trigger TRG_TB_SYSMENU
prompt ===============================
prompt
create or replace trigger dzda.TRG_TB_SYSMENU before
insert on TB_SYSMENU for each row
when (new.id is null)
begin
  select SEQ_TB_SYSMENU.nextval into :new.id from dual;
end;
/

prompt
prompt Creating trigger TRG_TB_SYSORGANIZATION
prompt =======================================
prompt
create or replace trigger dzda.trg_tb_SysOrganization
  before insert ON tb_SysOrganization
  for each row
when (new.id is null)
begin
  select seq_tb_SysOrganization.nextval into :new.id from dual;
end;
/

prompt
prompt Creating trigger TRG_TB_SYSPARAMETER
prompt ====================================
prompt
create or replace trigger dzda.trg_tb_sysparameter
  before insert ON tb_sysparameter
  for each row
when (new.id is null)
begin
  select seq_tb_sysparameter.nextval into :new.id from dual;
end;
/

prompt
prompt Creating trigger TRG_TB_SYSPERMISSIONS
prompt ======================================
prompt
create or replace trigger dzda.trg_tb_syspermissions
  before insert ON tb_syspermissions
  for each row
when (new.id is null)
begin
  select seq_tb_syspermissions.nextval into :new.id from dual;
end;
/

prompt
prompt Creating trigger TRG_TB_SYSPLUGIN
prompt =================================
prompt
create or replace trigger dzda.trg_tb_sysplugin
  before insert ON tb_sysplugin
  for each row
when (new.id is null)
begin
  select seq_tb_sysplugin.nextval into :new.id from dual;
end;
/

prompt
prompt Creating trigger TRG_TB_SYSROLE
prompt ===============================
prompt
create or replace trigger dzda.trg_tb_sysrole
  before insert ON tb_sysrole
  for each row
when (new.id is null)
begin
  select seq_tb_sysrole.nextval into :new.id from dual;
end;
/

prompt
prompt Creating trigger TRG_TB_SYSROLEPERMISSIONS
prompt ==========================================
prompt
create or replace trigger dzda.trg_tb_sysrolepermissions
  before insert ON tb_sysrolepermissions
  for each row
when (new.id is null)
begin
  select seq_tb_sysrolepermissions.nextval into :new.id from dual;
end;
/

prompt
prompt Creating trigger TRG_TB_SYSUSER
prompt ===============================
prompt
create or replace trigger dzda.trg_tb_sysuser
  before insert ON tb_sysuser
  for each row
when (new.id is null)
begin
  select seq_tb_sysuser.nextval into :new.id from dual;
end;
/

prompt
prompt Creating trigger TRG_TB_SYS_ERROR_LOG
prompt =====================================
prompt
create or replace trigger dzda.TRG_TB_SYS_ERROR_LOG before
insert on TB_SYS_ERROR_LOG for each row
when (new.id is null)
begin
  select SEQ_TB_SYS_ERROR_LOG.nextval into :new.id from dual;
end;
/

prompt
prompt Creating trigger TRG_TB_SYS_LWLOG
prompt =================================
prompt
create or replace trigger dzda.TRG_TB_SYS_LWLOG before
insert on TB_SYS_LWLOG for each row
when (new.id is null)
begin
  select SEQ_TB_SYS_LWLOG.nextval into :new.id from dual;
end;
/


spool off
原文地址:https://www.cnblogs.com/yougmi/p/8336783.html