Notepad++ 正则表达式的使用

1、批量删除整数的双引号

Ctrl + H
查找目标:"([0-9]\d*)"
替换为:$1
PS:$1表示引用第一行()中的内容

2、批量删除小数的双引号

Ctrl + H
查找目标:"(\d*\.\d*)"
替换为:$1
PS:$1表示引用第一行()中的内容,“\”表示转义字符

3、批量修改MongoDB中集合的id类型

目的:将id字段由String改为ObjectId

(1) 原JSON
[
	{
		"_id": "5e82dc326401952928c210d1",
		"userId": 4,
		"momentId": "5e82dc326401952928c210ce",
		"createdTime": 1585634354928,
		"_class": "com.mongodb.DemoPojo"
    }, {
		"_id": "5e82dc336401952928c210dc",
		"userId": 4,
		"momentId": "5e82dc336401952928c210d9",
		"createdTime": 1585634355583,
		"_class": "com.mongodb.DemoPojo"
    }
]
(2) Ctrl + H后使用的正则表达式

查找目标:("[a-z0-9]{24}")
替换为:{\n\t\t\t"$oid": $1\n\t\t}
PS:{24}表示所查找的内容长度为24、\n表示Enter、\t表示Tab、\r\n表示换行

(3) 修改后的JSON
[
	{
		"_id": {
			"$oid": "5e82dc326401952928c210d1"
		},
		"userId": 4,
		"momentId": {
			"$oid": "5e82dc326401952928c210ce"
		},
		"createdTime": 1585634354928,
		"_class": "com.mongodb.DemoPojo"
    }, {
		"_id": {
			"$oid": "5e82dc336401952928c210dc"
		},
		"userId": 4,
		"momentId": {
			"$oid": "5e82dc336401952928c210d9"
		},
		"createdTime": 1585634355583,
		"_class": "com.mongodb.DemoPojo"
    }
]

4、在存在一些", d"的前提下,批量将" d"修改为", d"

原数据:

dept-7841256901274, 43, dept-7834278137303 dept-7834278137303 dept-7841256901274
dept-7841256919232, 43, dept-7834278137303 dept-7834278137303 dept-7841256919232
dept-7841256940792, 43, dept-7834278137303 dept-7834278137303 dept-7841256940792
dept-7841256958741, 43, dept-7834278137303 dept-7834278137303 dept-7841256958741
dept-7848879246719, 43, dept-7834278137303 dept-7834278137303 dept-7848879246719

查找目标:([^,]) b
替换为:$1, b
PS: [^,]表示排除掉所有以","开头的内容
修改后所得数据:

dept-7841256901274, 43, dept-7834278137303, dept-7834278137303, dept-7841256901274
dept-7841256919232, 43, dept-7834278137303, dept-7834278137303, dept-7841256919232
dept-7841256940792, 43, dept-7834278137303, dept-7834278137303, dept-7841256940792
dept-7841256958741, 43, dept-7834278137303, dept-7834278137303, dept-7841256958741
dept-7848879246719, 43, dept-7834278137303, dept-7834278137303, dept-7848879246719

5、匹配中文

(1) 单个

原数据:

("Dept", "广州部("Dept", "广州部", 97)

查找目标:([一-龥!-~])\("
替换为:$1", 97\),\n\("
PS:

  • [一-龥!-~]:表示匹配一个汉字
  • [一-龥!-~]套在()中是为了给用于替换的$1使用,使得保留原来的汉字
  • \(: 通过\转义字符使(生效,在替换中,除了\n外,(前面的\都是为了使(生效
    修改所得数据:
("Dept", "广州部", 97),
("Dept", "广州部", 97)
(2) 多个

[一-龥!-~]+即可

6、 去除空行

查找目标:\r\n\r\n
替换为:\r\n

7、将匹配的字母改变大小写

原数据:setdata
查找目标:set([a-z])
变大写,替换为:set\U$1
修改后所得数据:setData
PS:

  • [a-z]表示匹配1个字母
  • 其中\U$1表示将"查找目标"中"()"内容的数据变为大写

8、删除匹配关键字所在行

目的:删除所有"ApiOperation"所在行
原数据:

public class DemoController {
	@PostMapping("first")
	@ApiOperation("FirstMethod")
	public ResponseEntity firstMethod() {
		return null;
	}

	@PostMapping("second")
	@ApiOperation("SecondMethod")
	public ResponseEntity secondMethod() {
		return null;
	}
}

查找目标:@ApiOperation\(".*"\)\r?\n\t
替换为:
修改后所得数据:

public class DemoController {
	@PostMapping("first")
	public ResponseEntity firstMethod() {
		return null;
	}

	@PostMapping("second")
	public ResponseEntity secondMethod() {
		return null;
	}
}

PS:

  • ".*": 匹配" "内所有内容
  • \r?\n: 在匹配目标末尾添加上该内容可删除行
  • \t: Tab,此处在匹配目标末尾添加上该内容,可避免下方"public"被Tab以下,若不添加\t,则会出现以下情况
public class DemoController {
	@PostMapping("first")
		public ResponseEntity firstMethod() {
		return null;
	}

	@PostMapping("second")
		public ResponseEntity secondMethod() {
		return null;
	}
}

9、让匹配内容退一行

目的:将所有行注释退到上一行,并与前方内容间隔一个空行
原数据:

	@PostMapping("demo")
	//demo

查找目标:\r\n\t(\\)\r\n +(\\)
替换为:$1
修改后所得数据:

	@PostMapping("demo") //demo

10、将@ApiOperation中的内容变为注释

(1) @ApiOperation在上方

原数据:

	@ApiOperation(value = "comment")
	@PostMapping("demo")

查找目标:@ApiOperation\(value = "(.+)"\)\r\n +(.+)
替换为:$2 //$1
修改后所得数据:

	@PostMapping("demo") //comment

PS:

  • \r\n: 表示从"@ApiOperation"的所在行换行到下一行,即"@PostMapping"所在行的最前头
  • +: 表示"@PostMapping"前面的空白,此处并不是只有1个"+",而是由空格和+组成,即 +,表示匹配多个空格
  • .+: 第1个匹配"“内的注释内容,对应$1;第2个匹配”@PostMapping"所在行空格后的全部内容,对应$2
(2) @ApiOperation在下方

原数据:

	@PostMapping("demo")
	@ApiOperation(value = "comment")

查找目标:\r\n +@ApiOperation\(value = "(.+)"\)
替换为://$1
修改后所得数据:

	@PostMapping("demo") //comment

PS: 出现\r\n的目的是匹配掉"@ApiOperation"前方的换行,使得匹配替换后,注释可与"@PostMapping"在同一行

11、将中文文档注释变为行注释

原数据:

	/**
	 * 修改数据
	 *
	 * @param
	 * @return
	 */
	@PostMapping("demo")

查找目标:/\*\*.*?([一-龥!-~]+).*?\*/$)
替换为://$1
修改后所得数据:

	//修改数据
	@PostMapping("demo")

PS: /\*\*: 匹配文档注释开头的/**

  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值