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

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

例如:

     Creating trigger TRG_TB_SYSFILE  替换后 变成 Creating trigger TRG_TB_SYSFILE_NEW

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

替换表达式:$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

时间: 2024-10-12 21:27:31

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

sublime_中使用正则表达式查找替换

原文地址: http://frontmag.no/artikler/utvikling/regex-search-and-replace-sublime-text-2 我只是做下翻译(呃,简单理解下就好,我六级还没过呢) 正则的查找替换是st2内置的,不用装插件了 那,原文中是例子: 10x620x580mm 10x620x580mm 11x620x2390mm 11x620x2390mm 11x620x3050mm ... 作者的意图是想取得每行的第一个数字,然后加上mm,比如第一行,要变成1

Notepad++正则表达式查找替换文本中文字符

测试需求 测试工具中xml配置文件中注释字段包含中文字符,在Win10系统下使用工具中偶尔会出现中文乱码导致配置文件失效.解决方法将配置文件中的中文注释换成英文注释或者直接替换删除.如何将配置文件中的中文字符查找删除? 操作步骤 在Notepad文本工具中使用正则表达式匹配中文字符并替换.当然你可以采用Python写个小工具也无不可.Notepad中使用正则表达式[^\x00-\xff]匹配中文字符. 1.构造包含中文文本用于测试,包含中文字符.普通字符和特殊字符. 2.中文字符正则表达式匹配:

在vs2013中使用正则表达式查找和替换文本内容

我们有的时候需要替换代码中的某些内容,因为替换的内容"不一致",所以不能简单的使用一个replace搞定.这里有几个解决方法,核心思想是一致的,程序员不要做体力活,能交给程序或脚本的就交给程序或脚本来完成. 我先提一个替换的需求,这个在实际工作中是很常见的.比如 把所有的toke[TOKEN_ENUM_ATTACK], token[TOKEN_ENUM_MAGIC]这样的字符串替换为TOKEN_ENUM_ATTACK, TOKEN_ENUM_MAGIC,也就是说去掉token[],直接

eclipse使用技巧---使用正则表达式查找替换

1,Eclipse ctrl+f 打开查找框2,选中 Regular expressions (正则表达式) 去掉/* */(eclipse)        /\*(.|[\r\n])*?\*/去掉//(eclipse)             //.*$去掉import(eclipse)     import.*$去掉空行(eclipse)         ^\s*\n去掉空行(ue)               %[ ^t]++^p 把 <html.*property=/"([a-zA

python对文件中的关键词查找替换,实现自动获取配置

1.目的 想对update_variable.py文件中的配置进行修改,数据通过系统接口自动获取 update_variable.py my_name='null' my_age=18 2.代码 update_file.py # name=phyger # line='my name: {name}' # new=line.replace('{name}',name) # print(new) # cur_abspath=os.path.abspath(__file__) import os c

C++、Java、JavaScript中的正则表达式

编程思想之正则表达式 什么是正则表达式? 正则表达式(Regular Expression)就是用某种模式去匹配一类字符串的公式.如你要在一篇文章中查找第一个字是"罗"最后一个字是"浩"的三个字的姓名,即"罗*浩":那么"罗*浩"就是公式,也称作模式(Pattern),这篇文章就是要匹配的串(或叫文本text).再如,你要检查输入的一个字符串是否是126邮箱的格式,你得制定一个规则去查检,这种规则就是正则表达式. 从入门开始

在UltraEdit的查找和替换中使用正则表达式 (转)

很多朋友都用过或者正在用UltraEdit,这个编辑器陪伴我也好几年了,从很多地方影响着我写代码的快捷键习惯,Ultraedit提供了非常丰富的编辑功能,其中非常重要的查找和替换功能一定大家都用过,Ultraedit提供的查找替换功能非常方便和强大,可以在单独文件里面查找替换,也可以在多个文件.多个目录里面进行查找替换.而我们在使用这些查找替换功能的时候,一 LiveJournal Tags: UltraEdit,正则表达式 般都是针对某个字符串进行,前两天我要对一个目录下(包含子目录)所有的h

VS2010中正则表达式查找和替换实例

例如要把:{"username": "aaa", "count": 2} 替换成:{{"username": "aaa", "count": 2}} 查找: {\{}{.*}{\}} 替换: \1\{\2\3\} 例如要把:<img class="img" src="img/logo-footer.png"> 替换成:<img c

在VS中用正则表达式查找或替换

Example: 查找#incldue中带有gl开头的头文件的,用include.+<gl.+或include.+<gl.+ VS2005中的[查找/替换]拥有强大的正则匹配功能 eg.          DBAssist.ToInt32(p_dtrSource["QCBATCH_SEQ_INT"])          转换成       p_dtrSource["QCBATCH_SEQ_INT"].ToString() 只需要在查找/替换中[记得选中查