idea 正则表达式搜索替换应用详解

idea 正则表达式搜索替换简单应用 利用正则表达式,idea可以进行快速大量替换

1.CTRL+R 快捷键调出下面当前页面替代操作栏

注意要使用正则表达式替换需要勾选regex

2.利用正则表达式进行替换

下面展示一些 简单操作的例子。

(\w+)get\(0\).getValue\("(\w+)"\)
 dtCfwStget(0).getValue("CFW_CD")
	$1.getValue(0,"$2")
 dtCfwSt.getValue(0,"CFW_CD")

	(\w+).getItem\("(\w+)"\).toString\(\).ToBscNumber\(\)
drItem.getItem("PERS_NUMBE").toString().ToBscNumber()
	$1.getItemBscNumber("$2")
drItem.getItemBscNumber("PERS_NUMBE")

	: (\w+).Rows\)
for (DataRow drItem : dtCardInfo.Rows)
	: $1.Rows())
for (DataRow drItem : dtCardInfo.Rows())

	row.getItem\("(\w+)"\).toString\(\).ToDecimal\(\)
row.getItem("ACT_MTH_VAL").toString().ToDecimal()
	row.getItemBigDecimal(	"$1")
row.getItemBigDecimal(	"ACT_MTH_VAL")

	\[0\]\["(\w+)"\]
matAssResRows[0]["ASS_VAL"]
	.get(0).getItem("$1")
matAssResRows.get(0).getItem("ASS_VAL")

以第二个为例(regester很好用)

若果想把类似于

drItem.getItem("PERS_NUMBE").toString().ToBscNumber()
drItaaa.getItem("PERS_bbb").toString().ToBscNumber()
drItemcccc.getItem("PERS_NUMBEccccc").toString().ToBscNumber()

一件替换为

drItem.getItemBscNumber("PERS_NUMBE")
drItaaa.getItemBscNumber("PERS_bbb")
drItemcccc.getItemBscNumber(PERS_NUMBEccccc")

第一步 选取一条原代码,将所有的左括号,右括号,左中括号,右中括号前面叫上\ ,使其变为正确的正则表达式:

// drItem.getItem("PERS_NUMBE").toString().ToBscNumber();
// drItem.getItem\("PERS_NUMBE"\).toString\(\).ToBscNumber\(\);
具体还有哪些符号前面需要加\转义,可以网查

第二部 选择需要变为X 的变量,用()选取,\w+指定选取括号里的字符

根据需求选择,这里通用的为(/w+)代替 X

// X.getItem("X").toString().ToBscNumber();

// (/w+).getItem\("(\w+)"\).toString\(\).ToBscNumber\(\);

这里匹配阶段结束(/w+).getItem("(\w+)").toString().ToBscNumber()可以匹配到所有 X.getItem(“X”).toString().ToBscNumber()的代码

第三步替代 将你需要替代成的X表达式用$1,$2…替代

这是我最终需要代码的一种
//drItem.getItemBscNumber("PERS_NUMBE")

化为X表达式
// X.getItemBscNumber("X")

利用$加序号指定需要替代的位置
这是之前匹配阶段的X表达式,$1选中第一个(\w+),,$2选中第一个(\w+)......
 X.getItem("X").toString().ToBscNumber();

将 X.getItemBscNumber("X")替代为
$1.getItemBscNumber("$2")

最后输入替代

这里报红是因为我替代过了

到此这篇关于idea 正则表达式搜索替换简单应用的文章就介绍到这了,更多相关idea 正则表达式替换内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • IntelliJ IDEA搜索整个项目进行全局替换(有危险慎用)

    我们用Eclipse或者IntelliJ IDEA编程,有时候需要将整个项目的某个字符串替换成其他的. 全局搜索我会,我还给调成ctrl+g了呢,但是遇到要全局(整个项目)替换字符串.哎哟,我有点蒙了.这不换了编辑器吗. 我用的是eclipse的keymap而且电脑又不是mac.那么问题来啦.怎么找快捷键呢. 如下: 额,顺便说下,mac的好像是ctrl+shift+r,就出来了.我还讨来了个mac截图. 本功能请谨慎使用! 总结 以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作

  • idea替换快捷键,批量处理对象的操作

    ctrl + r 当前文件内容替换,指的是在当前打开的文件中替换匹配的字符,只操作一个文件. ctrl + shift + r 在路径中替换,指的是在选定的目录下或者类包下,查找要被替换的字符,再在第二个输入框中输入要替换的字符,点击弹出框的右下角的replace或者replaceall即可. 补充:Idea 竖选文本.竖向选择.横向纵向选择文本代码 在使用Idea的时候,可能需要在相同类型的文字中增加数据,所以Idea提供一种列式选择方式,提高开发的效率. 如果需要使用,我们可以选中代码,右键

  • Intellij IDEA全局替换快捷键整理

    IDEA全局替换 通过快捷键 Ctrl+Shift+r 或这点击 Edit >Find >Replace In Path 有些IDEA版本按了快捷键也没效果,经常遇到的原因如下: 1.与其他软件快捷键冲突了,特别是输入法的快捷键. 解决方案是:把输入法的快捷键禁了. 2.有时候全局搜索不到搜索内容,可是就是有 解决方案:这时候 File >Invalidate Caches/Restart 清下缓存即可; 3.有些IDEA版本的默认快捷键发生了变化,这时要去更改快捷键设置 解决方案:fi

  • IntelliJ IDEA全局内容搜索和替换教程图解

    在做项目时,有时会在整个项目里或指定文件夹下进行全局搜索和替换,这是一个很方便功能.使用方法如下: 一.全局搜索 1.使用快捷键Ctrl+Shift+F打开搜索窗口,或者通过点击Edit–>Find–>Find in path打开搜索窗口,如下图: 2.搜索界面如下,主要分为上中下三部分,上部主要为搜索条件(要搜索的内容.范围.方式等),中间部分为包含搜索内容的文件列表,点击单个文件可以在下面部分预览文件内容. 3.搜索范围包括整个项目In project.模块module.指定目录direc

  • IDEA全量替换一次性解决旧项目并将所有文件换行符改为LF问题

    在java项目开发中.最开始换行符大家一般是在idea中设置新文件为LF,并且对旧文件通过IDEA下方的点击来更换换行符.很显然,对于几千文件的旧项目明显是不合理.后来我找到idea的官网文档 https://www.jetbrains.com/help/idea/configuring-line-endings-and-line-separators.html 用谷歌翻译后如下,按图操作.握草,九百多的文件改变量. 总结 以上所述是小编给大家介绍的IDEA全量替换一次性解决旧项目并将所有文件换

  • idea 正则表达式搜索替换应用详解

    idea 正则表达式搜索替换简单应用 利用正则表达式,idea可以进行快速大量替换 1.CTRL+R 快捷键调出下面当前页面替代操作栏 注意要使用正则表达式替换需要勾选regex 2.利用正则表达式进行替换 下面展示一些 简单操作的例子. (\w+)get\(0\).getValue\("(\w+)"\) dtCfwStget(0).getValue("CFW_CD") $1.getValue(0,"$2") dtCfwSt.getValue(0

  • python 正则表达式参数替换实例详解

    正则表达式是一个特殊的字符序列,它能帮助你方便的检查一个字符串是否与某种模式匹配. Python 自1.5版本起增加了re 模块,它提供 Perl 风格的正则表达式模式. re 模块使 Python 语言拥有全部的正则表达式功能. compile 函数根据一个模式字符串和可选的标志参数生成一个正则表达式对象.该对象拥有一系列方法用于正则表达式匹配和替换. re 模块也提供了与这些方法功能完全一致的函数,这些函数使用一个模式字符串做为它们的第一个参数. 本章节主要介绍python 正则表达式参数替

  • phpcms实现验证码替换及phpcms实现全站搜索功能教程详解

    在使用phpcms替换网页的时候,除了正常的替换栏目.内容页等,其他的什么验证码啦,提交表单了,搜索功能了,这些在替换的时候可能会对一些默认文件有一些小小 的改变 下面就是自己在失败中成功的过程,最后终于替换成没有bug的替换 一.phpcms的验证码替换 有验证码的地方,一般就是表单了,那么首先就要先制作表单出来了,表单的制作过程很简单,如下: A.制作一张表单出来 (1)登录自己的phpcms后台管理 (2)登录进去后,按照这个步骤进行添加表单 a.模块------表单向导:如图 b.打开表

  • 正则表达式+Python re模块详解

    正则表达式(Regluar Expressions)又称规则表达式,在代码中常简写为REs,regexes或regexp(regex patterns).它本质上是一个小巧的.高度专用的编程语言. 通过正则表达式可以对指定的文本实现 匹配测试.内容查找.内容替换.字符串分割 等功能. re模块介绍 Python中的re模块提供了一个正则表达式引擎接口,它允许我们将正则表达式编译成模式对象,然后通过这些模式对象执行模式匹配搜索和字符串分割.子串替换等操作.re模块为这些操作分别提供了模块级别的函数

  • C++中正则表达式的使用方法详解

    目录 介绍 1. C++ 中的正则表达式 (Regex) 1.1 范围规范 1.2 重复模式 2. C++正则表达式的例子 3. C++正则表达式中使用的函数模板 3.1 regex_match() 3.2 regex_search() 3.3 regex_replace() 4.C++输入验证 5.总结 介绍 C++ 正则表达式教程解释了 C++ 中正则表达式的工作,包括正则表达式匹配.搜索.替换.输入验证和标记化的功能. 几乎所有的编程语言都支持正则表达式. C++ 从 C++11 开始直接

  • Python正则表达式re.sub()用法详解

    目录 1.匹配单个数字或字母 2.匹配多个数字或字母 3.匹配其他 总结 源代码.参数及其意义: def sub(pattern, repl, string, count=0, flags=0): """Return the string obtained by replacing the leftmost non-overlapping occurrences of the pattern in string by the replacement repl. repl ca

  • Linux上的文件搜索命令实例详解

    locate 基础了解 在centos7上默认没有locate命令,需要先手动安装.安装步骤:http://www.cnblogs.com/feanmy/p/7676717.html locate命令搜索的后台数据库路径:/var/lib/mlocate/mlocate.db ls -hl /var/lib/mlocate total 1.2M -rw-r----- 1 root slocate 1.2M Oct 16 14:36 mlocate.db 更新数据库使用updatedb,配置文件为

  • Java中正则表达式的使用和详解(下)

    在上篇给大家介绍了Java中正则表达式的使用和详解(上),具体内容如下所示: 1.常用正则表达式 规则 正则表达式语法   一个或多个汉字 ^[\u0391-\uFFE5]+$  邮政编码 ^[1-9]\d{5}$ QQ号码 ^[1-9]\d{4,10}$  邮箱 ^[a-zA-Z_]{1,}[0-9]{0,}@(([a-zA-z0-9]-*){1,}\.){1,3}[a-zA-z\-]{1,}$  用户名(字母开头 + 数字/字母/下划线) ^[A-Za-z][A-Za-z1-9_-]+$ 手

  • C/C++宏替换实现详解

    基本形式 #define name replacement_text 通常情况下,#define 指令占一行,替换文本是 define 指令行尾部的所有剩余部分,但也可以把一个较长的宏定义分成若干行,这时需要在待续的行末尾加上一个反斜杠符 ``. 宏定义也可以带参数,这样可以对不同的宏调用使用不同的替换文本.例: #define max(A, B) ((A) > (B) ? (A) : (B)) 宏展开中的陷阱 仔细考虑一下 max 的展开式,其中的表达式会被计算两次,因此如果表达式中包含自增运

  • Jmeter中正则表达式提取器使用详解

    目录 在使用Jmeter过程中,会经常使用到正则表达式提取器提取器,虽然并不直接涉及到请求的测试,但是对于数据的传递起着很大的作用,本篇博文就是主要讲解关于正则表达式及其在Jmeter的Sampler中的调用. 一.首先来介绍一下Jmeter中正则表达式提取器的元素组成,下图所示: 下面是各参数值的含义: 参数 释义 引用名称 在HTTP等请求中,引用此数据,需要用到的名称 正则表达式 用于将需要的数据提取出来 模板 表示使用提取到的第几个值: $1$:表示取第1个 $2$:表示取第二个 以此类

随机推荐