删除操作

notepad++去掉行尾空格或逗号
查找目标:\s+$ (或,+$)

替换为空

注意: 以换行符结尾表示是$\r\n,而不是\r\n$

notepad++删除文本文件里面的空白行
查找目标:^[ \t]*\n或者:^\r\n

替换为空

notepad++去掉只有数字的行
查找目标:^[\d]+$\r\n

替换为空

正则去掉不包含某个字符串的行
^(?!.*?key).*\n

替换为空

notepad++去掉不是以某个数开头的行
查找目标:^[^1].*\r\n

替换为空

notepad++去掉所有行中的<>(里面不能嵌套<>)
查找目标:<[^>]*>

替换为空

原始文件:

<code><span class=”kwd”>import</span><span class=”pln”> </span><dfn><span class=”typ”>BaseHTTPServer</span></dfn><span class=”pln”>
</span><span class=”kwd”>import</span><span class=”pln”> </span><dfn><span class=”typ”>SimpleHTTPServer</span></dfn><span class=”pln”>
</span><span class=”kwd”>import</span><span class=”pln”> </span><dfn><span class=”typ”>CGIHttpServer</span></dfn></code>

替换输出:

import BaseHTTPServer
import SimpleHTTPServer
import CGIHttpServer

notepad++去掉python代码中的注释
去掉”’ ”’之间的注释
查找目标(regular expression)

^.*?”’\r\n.*?\r\n.*?”’\r\n

替换为空

去掉#注释
查找目标(re)

^(.*?)#.*?\r\n

替换为

\1\r\n

再去掉空行

如果只去掉注释行而不删除代码后面跟着的#注释则查找目标为

^\s+#.*?\r\n

替换操作

notepad++替换所有行中的(Week 1) \n II. 为 ;
查找目标:\([^\.]*\.

替换为空

示例:

I. Introduction机器学习综述 (Week 1)

II. Linear Regression with One Variable单变量线性回归 (Week 1)

III. Linear Algebra Review线性代数 (Week 1, Optional)

结果:

I. Introduction机器学习综述 ;Linear Regression with One Variable单变量线性回归 ;Linear Algebra Review线性代数

Note:(和.都是特殊字符,要转义;\(代表从字符(开始; [^\.]*代表非字符.的字符重复n次; \.表示到字符.为止

notepad++将[]及包含的字母替换成空
查找目标

[/][[:alpha:]]

替换为空

示例:

[cp] —你看我是歌手吗? —不是。[/cp] [cp] 为什么我的个子再也长不高了? 可能你得了恐高症[/cp] [cp]

结果:

—你看我是歌手吗? —不是。 为什么我的个子再也长不高了? 可能你得了恐高症

notepad++替换括号中匹配的内容\1
1.在汉化的时候,是否经常碰到这样的语句需要翻译:
“Error adding the post!”;
“Error adding the comment!”;
“Error adding the user!”;
查找目标:
“Error adding ([^!|”|;]*)
替换成:
“在增加\1时发生错误
结果是:
“在增加the post时发生错误!”;
“在增加the comment时发生错误!”;
“在增加the user时发生错误!”;

提示:

1. ([^!|”|;]*) 的意思是 不等于 ! 和 ” 和 ; 中的任何一个,意思就是这3个字符之外的所有字符将被选中(替换区域);

2. 正则表达式中\1表示第一个括号里面匹配内容。

正则表达式将倒数第一个\t替换为=>
biscuits milk
yoghurt milk
tomato souce pasta
tomato souce milk
water pasta milk

查找目标:(RE)

\t(\w+?)\r\n

替换为:

=>\1\r\n

结果:

biscuits=>milk
yoghurt=>milk
tomato souce=>pasta
tomato souce=>milk
water pasta=>milk

正则表达式将数字开头替换为数字.开头
1.os.sep 可以取代
2.os.name
3os

查找目标:

^(\d+)\.*

替换为:

\1.

结果:

1.os.sep 可以取代
2.os.name
3.os

Notepad++中在小数和字母间加上*号
查找目标
(\d\.\d+)
替换为
\1\*

示例:
0.95c == 0.9b + 0.475a
c == 0.9b + 0.475a
0.85a == c + 0.15b
c == b + 0.575a

结果:
0.95*c == 0.9*b + 0.475*a
c == 0.9*b + 0.475*a
0.85*a == c + 0.15*b
c == b + 0.575*a

Notepad++中在字符串上加上引号
查找目标

(\w+)

替换为
‘\1’

input:
c, i, nd, o, p, u

output:
‘c’, ‘i’, ‘nd’, ‘o’, ‘p’, ‘u’

Notepad++将每行赋值语句修改成判断语句
查找目标
^(.*)$
替换为
if  \1 :\n\tprint′True′

示例:
0.95*c == 0.9*b + 0.475*a
c == 0.9*b + 0.475*a
0.85*a == c + 0.15*b
c == b + 0.575*a

结果:
if 0.95*c == 0.9*b + 0.475*a :
print(‘True’)
if c == 0.9*b + 0.475*a :
print(‘True’)
if 0.85*a == c + 0.15*b :
print(‘True’)
if c == b + 0.575*a :
print(‘True’)

查找操作

notepad++查找括号中匹配的内容\1
查找出(0 0 1)(0 1 1)T, x③=(-1 0 -1)T, x④=(-1 -1 -1)中小括号内的内容
查找目标:.*?((−∗\d\s∗)+(−∗\d\s∗)+).*?
替换成:\1
结果是:

(0 0 1)(0 1 1)(-1 0 -1)(-1 -1 -1)

Note: 这个查找效果不是很好,达不到用python编写re.findall()的效果。

notepad++查找括号()中的内容\1
查找出

ω1:{(1 0)T, (2 0) T, (1 1) T}
ω2:{(-1 0)T, (0 1) T, (-1 1) T}
ω3:{(-1 -1)T, (0 -1) T, (0 -2) T}

中小括号内的内容
查找目标:.*?(\-\d\s\-\d\-∗\d\s\-∗\d).*?
替换成:\1
结果是:

(1 0)(2 0)(1 1) T}
(-1 0)(0 1)(-1 1) T}
(-1 -1)(0 -1)(0 -2) T}

还要自己删除后面多余的T},不知道还有什么其他比较好的查找方法?