notepad++ 批量替换删除指定字符之后 或者 之前的字符,Notepad+批量替换使用大全

news2024/11/18 20:23:39

notepad++ 批量替换删除指定字符之后 或者 之前的字符,Notepad+批量替换使用大全

资源宝分享:www.httple.net

注意: 不支持多行表达式 (involving \n, \r, etc).

1 基本表达式

符号解释
.匹配任意字符,除了新一行(\n)。也就是说 “.”可以匹配 \r ,当文件中同时含有\r and \n时,会引起混乱。要匹配所有的字符,使用\s\S。
(…)这个匹配一个标签区域. 这个标签可以被访问,通过语法 \1访问第一个标签, \2 访问第二个, 同理 \3 \4 … \9。 这些标签可以用在当前正则表达式中,或则替search和replace中的换字符串。
\1, \2, etc在替换中代表1到9的标签区域(\1 to \9)。例如, 查找字符串 Fred([1-9])XXX 并替换为字符串 Sam\1YYY的方法,当在文件中找到Fred2XXX的字符串时,会替换为Sam2YYY。注意: 只有9个区域能使用,所以我们在使用时很安全,像\10\2 表示区域1和文本”0”以及区域2。
[…]表示一个字符集合, 例如 [abc]表示任意字符 a, b or c.我们也可以使用范围例如[a-z] 表示所以的小写字母。
[^…]表示字符补集. 例如, [^A-Za-z] 表示任意字符除了字母表。
^匹配一行的开始(除非在集合中, 如下).
$匹配行尾.
*匹配0或多次, 例如 Sa*m 匹配 Sm, Sam, Saam, Saaam 等等.
+匹配1次或多次,例如 Sa+m 匹配 Sam, Saam, Saaam 等等.
?匹配0或者1次, 例如 Sa?m 匹配 Sm, Sam.
{n}匹配确定的 n 次.例如, ‘Sa{2}m’ 匹配 Saam.
{m,n}匹配至少m次,至多n次(如果n缺失,则任意次数).例如, ‘Sa{2,3}m’ 匹配 Saam or Saaam. ‘Sa{2,}m’ 与 ‘Saa+m’相同
*?, +?, ??, {n,m}?非贪心匹配,匹配第一个有效的匹配,通常 ‘<.>’ 会匹配整个 ‘content’字符串 –但 ‘<.?>’ 只匹配 ” .这个标记一个标签区域,这些区域可以用语法\1 \2 等访问多个对应1-9区域。

2 标记和分组

符号解释
(…)一组捕获. 可以通过\1 访问第一个组, \2 访问第二个.
(?:…)非捕获组.
(?=…)非捕获组 – 向前断言. 例如’(.*)(?=ton)’ 表达式,当 遇到’Appleton’字符串时,会匹配为’Apple’.
(?<=…)非捕获组 – 向后断言. 例如’(?<=sir) (.*)’ 表示式,当遇到’sir William’ 字符串时,匹配为’ William’.
(?!…)非捕获组 – 消极的向前断言. 例如’.(?!e)’ 表达式,当遇到’Apple’时,会找到每个字母除了 ‘l’,因为它紧跟着 ‘e’.
(?非捕获组 – 消极向后断言. 例如 ‘(?
(?P…)命名所捕获的组. 提交一个名称到组中供后续使用,例如’(?PA[^\s]+)\s(?P=first)’ 会找到 ‘Apple Apple’. 类似的 ‘(A[^\s]+)\s\1’ 使用组名而不是数字.
(?=name)匹配名为name的组. (?P…).
(?#comment)批注 –括号中的内容在匹配时将被忽略。

3 特殊符号

符号解释
\s匹配空格. 注意,会匹配标记的末尾. 使用 [[:blank:]] 来避免匹配新一行。
\S匹配非空白
\w匹配单词字符
\W匹配非单词字符
\d匹配数字字符
\D匹配非数字字符
\b匹配单词边界. ‘\bW\w+’ 找到W开头的单词
\B匹配非单词边界. ‘\Be\B+’ – 找到位于单子中间的字母’e’
\<This matches the start of a word using Scintilla’s definitions of words.
>This matches the end of a word using Scintilla’s definition of words.
\x运行用x来表达可能具有其他意思的字符。例如, [ 用来插入到文本中作为[ 而不是作为字符集的开始.

4 字符类

符号解释
[[:alpha:]]匹配字母字符: [A-Za-z]
[[:digit:]]匹配数字字符: [0-9]
[[:xdigit:]]匹配16进制字符: [0-9A-Fa-f]
[[:alnum:]]匹配字母数字字符: [0-9A-Za-z]
[[:lower:]]匹配小写字符: [a-z]
[[:upper:]]匹配大写字符: [A-Z]
[[:blank:]]匹配空白 (空格 or tab):[ \t]
[[:space:]]匹配空白字符:[ \t\r\n\v\f]
[[:punct:]]匹配标点字符: [-!”#$%&’()*+,./:;<=>?@[]_`{
[[:graph:]]匹配图形字符: [\x21-\x7E]
[[:print:]]匹配可打印的字符 (graphical characters and spaces)
[[:cntrl:]]匹配控制字符

5 替换操作

使用正则表达式的标记,通过()来包围想要用的字符,然后用\1 来替换字符串,第一个匹配文本。

例如:

Text bodySearch stringReplace stringResult
Hi my name is Fredmy name is (.+)my name is not \1Hi my name is not Fred
The quick brown fox jumped over the fat lazy dogbrown (.+) jumped over the (.+)brown \2 jumped over the \1The quick brown fat jumped over the fox lazy dog

其他方法:

想要把除了 “无敌大奶爸” 之外的所有内容去除。怎么做?
还是Ctrl+F,然后把不是无敌大奶爸的内容一个个输进去,在替换成空白,重复这个操作,
直到所有杂物排除掉。就可以搜到无敌大奶爸了。

逐个铲除多余的

最后得到干净的奶爸(这个反向查找不是反选别误会)
但这个始终是指标不治本,如果杂物更更更更多!!
没事,正则表达式出动吧!

我们撤销到刚才的凌乱状态,然后还是查找F,查找模式选择:正则表达式。
然后查找目标输入这个:

    无\S+敌\S+大\S+奶\S+爸

这样就能查到从无开始到爸结尾,中间穿插敌大奶的地方了。
\S =代表匹配任何一个字符,大写的。
\S+就是匹配任何一个字符包括往后的任何字符。一行内。

所以他会按照这个搜索: 无XX敌XX大XX奶XX爸
然后我们直接将他替代成: 无敌大奶爸,在搜索,就能找到所有的大奶爸了。

原来不止一个大奶爸

*******!!无敌大大大大奶爸也会被搜索出来!
无XX敌XX大XX奶XX爸有个弊端就是,如果里面有相同的字也会被忽略掉。
比如: 无XX敌敌X大大大X奶XX爸 => 无敌大奶爸
这样原本不是一个真的奶爸也会因为中间去掉了字数变成大奶爸,怎么办?

嗯哼?如果这样的话,我推荐你用两个字之间来逐个搜索了。

或者用人的智慧眼来分析呗,大家都是字,何必互相为难。

那我就用:   无\W+敌\W+大\W+奶\W+爸

\W = 匹配任何非单词字符。等价于“[^A-Za-z0-9_]”,后面跟 + 号同上,往后扩展。
这样我就只改英文字符和数字下划线等,无视中文,无敌大大大跟我没关系了!!

关于其他好玩的正则表达式,可以参考百度自己按。可以改数字,改标点XXX一大堆。
这里就不说了。

高级替代: 改变包含在其中的内容
想改包含在中间的某几个数字。

"display": {

"thirdperson_righthand": {

"rotation": [89, 180, 0],

"translation": [-5.75, 0, -4]

},

目标:想把 [?,x,?] 里的数字改成别的数字怎么做?

"display": {

"thirdperson_righthand": {

"rotation": [89, abc, 0],

"translation": [-5.75, abc, -4]

},

如果你要一个个替代 [] 里的内容,字数躲起来会很麻烦.
所以干脆直接用正则表达式解决。
搜索:  , \d+,  替换成 , 233,     (借助两个逗号定位来获取中间的数字 \d 代表0-9的数字)

其他方法:

删除“123”之后的所有字符用:

123.*?$

删除“123”之前的所有字符用:

^.*123

1、按组合键Ctrl + F,查找模式选择 '正则表达式',不选 '.匹配新行'

2、查找目标输入 :

    ^.*关键字.*\r?\n    (不保留空行)
    ^.*关键字.*$  (保留空行)

3、替换为:(空)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1099466.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

内容分发网络CDN分布式部署真的可以加速吗?原理是什么?

Cdn快不快&#xff1f;她为什么会快&#xff1f;同样的带宽为什么她会快&#xff1f;原理究竟是什么&#xff0c;同学们本着普及知识的想法&#xff0c;我了解的不是很深入&#xff0c;适合小白来看我的帖子&#xff0c;如果您是大佬还请您指正错误的地方&#xff0c;先谢谢大佬…

本机配置SSH连接代码仓库

一、创建SSH 1. 查看是否之前有过ssh&#xff0c;在终端输入。 cd ~/.ssh 如果显示No such file or directory &#xff0c;表示之前没有创建过ssh&#xff0c;直接进入下一步&#xff1b;如果可以直接进入需要先清理rss&#xff0c;终端执行命令&#xff1a; mkdir key_b…

docker拉取镜像错误missing signature key

参考地址&#xff1a;docker拉取镜像错误 missing signature key-CSDN博客 linux系统&#xff0c;使用docker拉取的时候&#xff0c;报错如下 missing signature key 就一阵莫名其妙&#xff0c;之前还好好的&#xff0c;突然就不行了 按照网上说的方法&#xff0c;查看doc…

华为数通方向HCIP-DataCom H12-831题库(单选题:261-280)

第261题 某网络通过部署1S-IS实现全网与通,若在一台IS-IS路由器的某接口下配置命令isis timer holding multiplier 5 level-2,则以下关于该场景的描述,正确的是哪一项? A、该接口Level-2邻居保持时间为5秒 B、该接口Level-1邻居保持时间为30秒 C、该接口为点对点链路接口 …

MySQL 8.0 OCP (1Z0-908) 考点精析-架构考点6:InnoDB Tablespaces之系统表空间(System Tablespace)

文章目录 MySQL 8.0 OCP (1Z0-908) 考点精析-架构考点6&#xff1a;InnoDB Tablespaces之系统表空间&#xff08;System Tablespace&#xff09;系统表空间&#xff08;System Tablespace&#xff09;主要系统变量innodb_data_file_path关于autoextend和max属性系统表空间文件默…

猫头虎博客带您使用Markdown编辑器

&#x1f337;&#x1f341; 博主猫头虎 带您 Go to New World.✨&#x1f341; &#x1f984; 博客首页——猫头虎的博客&#x1f390; &#x1f433;《面试题大全专栏》 文章图文并茂&#x1f995;生动形象&#x1f996;简单易学&#xff01;欢迎大家来踩踩~&#x1f33a; &a…

山西电力市场日前价格预测【2023-10-17】

日前价格预测 预测说明&#xff1a; 如上图所示&#xff0c;预测明日&#xff08;2023-10-17&#xff09;山西电力市场全天平均日前电价为337.57元/MWh。其中&#xff0c;最高日前电价为437.22元/MWh&#xff0c;预计出现在18: 30。最低日前电价为281.67元/MWh&#xff0c;预计…

微服务docker部署实战

docker基础和进阶(*已掌握的可以跳过 *) 基础 docker基础 进阶 docker进阶 准备工作 提前准备好mysql和redis的配置&#xff0c;如下 在/zzq/mysql/conf目录下配置mysql配置文件my.cnf [client] #设置客户端字符集 default_character_setutf8 [mysqld] #开启定时任务 event_s…

Android组件通信——广播机制:BroadcastReceiver(二十九)

1. BroadcastReceiver 1.1 知识点 &#xff08;1&#xff09;掌握广播接收器的主要作用及基本实现&#xff1b; &#xff08;2&#xff09;可以使用广播启动Service&#xff1b; &#xff08;3&#xff09;理解闹钟服务的使用&#xff1b; 1.2 具体内容 广播这个名词大家…

BAT026:删除当前目录指定文件夹以外的文件夹

引言&#xff1a;编写批处理程序&#xff0c;实现删除当前目录指定文件夹以外的文件夹。 一、新建Windows批处理文件 参考博客&#xff1a; CSDNhttps://mp.csdn.net/mp_blog/creation/editor/132137544 二、写入批处理代码 1.右键新建的批处理文件&#xff0c;点击【编辑】…

vueday01——使用属性绑定+ref属性定位获取id

1.属性绑定&#xff08;Attribute 绑定&#xff09; 第一种写法 <div v-bind:id"refValue"> content </div> 第二种写法&#xff08;省略掉v-bind&#xff09; <div :id"refValue"> content </div> 2.代码展示 <template…

【论文阅读】 Cola-Dif; An explainable task-specific synthesis network

文章目录 CoLa-Diff: Conditional Latent Diffusion Model for Multi-modal MRI SynthesisAn Explainable Deep Framework: Towards Task-Specific Fusion for Multi-to-One MRI Synthesis CoLa-Diff: Conditional Latent Diffusion Model for Multi-modal MRI Synthesis 论文…

谈谈 RDB

谈谈 RDB RDB&#xff1a;相当于对内存中的数据&#xff0c;拍一张数据快照。RDB文件存储的是二进制数据。 这里提一点&#xff0c;Redis 的快照是全量快照&#xff0c;也就是说每次执行快照&#xff0c;都是把内存中的「所有数据」都记录到磁盘中。 所以可以认为&#xff0c;执…

在 Windows Server RDS 服务器 上重置 120 天宽限期

如果您出于测试目的安装了 RDS Server 2016/2019/2022&#xff0c;并且 RDS 许可宽限期已过期&#xff0c;请继续阅读下面的内容以了解如何重置 120 天宽限期。您可能知道&#xff0c;在安装 RDS Server 2016 时&#xff0c;您有 120 天的时间来安装 RD 客户端访问许可证 &…

数据结构--堆

一. 堆 1. 堆的概念 堆&#xff08;heap&#xff09;&#xff1a;一种有特殊用途的数据结构——用来在一组变化频繁&#xff08;发生增删查改的频率较高&#xff09;的数据集中查找最值。 堆在物理层面上&#xff0c;表现为一组连续的数组区间&#xff1a;long[] array &…

【LeetCode】29. 两数相除

1 问题 给你两个整数&#xff0c;被除数 dividend 和除数 divisor。将两数相除&#xff0c;要求 不使用 乘法、除法和取余运算。 整数除法应该向零截断&#xff0c;也就是截去&#xff08;truncate&#xff09;其小数部分。例如&#xff0c;8.345 将被截断为 8 &#xff0c;-…

ubuntu 18.04 LTS交叉编译opencv 3.4.16并编译工程[全记录]

一、下载并解压opencv 3.4.16源码 https://opencv.org/releases/ 放到home路径下的Exe文件夹&#xff08;专门放用户安装的软件&#xff09;中&#xff0c;其中build是后期自建的 为了版本控制&#xff0c;保留了3.4.16&#xff0c;并增加了-gcc-arm 二、安装cmake和cmake-g…

nodejs基于vue网上考勤系统

本网上考勤系统是针对目前考勤的实际需求&#xff0c; 采用计算机系统来管理信息&#xff0c;取代人工管理模式&#xff0c;查询便利&#xff0c;信息准确率高&#xff0c;节省了开支&#xff0c;提高了工作的效率。 本网上考勤系统主要包括个人中心、员工请假管理、员工考勤管…

哈希表简介

基本介绍 思路分析 代码实现 # 哈希表 # 员工信息 class Emp:id: int 0name: str next Nonedef __init__(self, id, name):self.id idself.name namedef __str__(self):return f"id{self.id}, name{self.name}"class EmpLinkedList:# 头指针&#xff0c;指向第…

jenkins整合gerrit

背景 公司项目之前使用jenkins整合了gitlab&#xff0c;后面代码迁移到gerrit&#xff0c;所以需要修改jenkins配置。下面就简单的介绍一下jenkins如何整合gerrit。 环境 服务器&#xff1a;linux 环境&#xff1a;docker、jenkins 代码仓库&#xff1a;gerrit 前提 docke…