Notepad正则表达式剖析Word文档下载推荐.docx
《Notepad正则表达式剖析Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《Notepad正则表达式剖析Word文档下载推荐.docx(24页珍藏版)》请在冰点文库上搜索。
Ctrl-Z
撤销上一次操作
Alt-Backspace
同上
Ctrl-Y
重做,注:
撤销后,重做刚刚撤销的动作
Ctrl-A
全选
Alt-Shift-方向键或
Alt+鼠标左键
列选择模式
Ctrl+鼠标左键
非连续性的多区域选择
ALT-C
列编辑器
Ctrl-D
复制当前行至下方,或者复制选中区域至其后
Ctrl-T
复制当前行至剪贴板(注:
帮助中说是将当前行与上一行交换位置)
Ctrl-Alt-T
与上一行进行交换
Ctrl-Shift-Up
将当前行上移一行
Ctrl-Shift-Down
将当前行下移一行
Ctrl-L
删除当前行
Ctrl-I
-(注:
帮助中是分割多行,不过最新版中不起作用)
Ctrl-J
合并多行(注:
使用时要选择中需要合并的行)
Ctrl-G
跳转至某行对话框
Ctrl-Q
添加/删除注释
Ctrl-Shift-Q
区块添加/删除注释
Tab(selectionofoneormorefulllines)
插入Tab
Shift-Tab(selectionofoneormorefulllines)
删除位置之前的Tab
Ctrl-BackSpace
删除当前位置至单词开始的内容
Ctrl-Delete
删除当前位置至单词结尾的内容
Ctrl-Shift-BackSpace
删除当前位置至行首的内容
Ctrl-Shift-Delete
删除当前位置至行尾的内容
Ctrl-U
转换为小写
Ctrl-Shift-U
转换为大写
Ctrl-B
跳转至配对的括号
Ctrl-Space
触发函数自动完成列表
Ctrl-Shift-Space
触发函数参数提示
Ctrl-Enter
触发关键字自动完成列表
Ctrl-Alt-R
整个页面文字方向从右到左
Ctrl-Alt-L
整个页面文字方向从左到右(注:
在安装了zencoding后,此快捷键可能被覆盖)
Enter
回车
Shift-Enter
建议添加一个快捷键用来复制当前行至下一行:
在设置->
快捷键管理中,选择scintillacommands中,找到SCI_LINEDUPLICATE,给它指定一个快捷键,例如Ctrl+M
3.搜索相关
Ctrl-F
打开搜索对话框
Ctrl-H
打开替换搜索对话框
F3
搜索下一个结果
Shift-F3
搜索上一个结果
Ctrl-Shift-F
文件中搜索
F7
调到寻找结果
Ctrl-Alt-F3
快速查找下一个
Ctrl-Alt-Shift-F3
快速查找上一个
Ctrl-F3
选定并寻找下一个
Ctrl-Shift-F3
选定并寻找上一个
F4
下一次寻找结果
Shift-F4
上一次寻找结果
Ctrl-Shift-I
增量查找
Ctrl-n
跳至下一个结果,用第n个风格标识(n为1~5,0是默认风格)
Ctrl-Shift-n
跳至上一个结果,用第n个风格标识(n为1~5,0是默认风格)
Ctrl-F2
收缩展开标签
F2
跳至下一个标签处
Shift-F2
跳至上一个标签处
4.显示相关
定义内容
Ctrl-(Keypad-/Keypad+)或者Ctrl+鼠标滚轮
放大/缩小页面
Ctrl-Keypad/
回复到原始页面大小
F11
开关全屏显示(显示标签页)
F12
开关全屏显示(不显示标签页)
Ctrl-Alt-F
收缩当前折叠
Ctrl-Alt-Shift-F
展开当前折叠
Alt-0
收缩所有折叠
Alt-(1~8)
展开相应层折叠
Alt-Shift-0
展开所有折叠
Alt-Shift-(1~8)
展开所有层次折叠
5.运行相关
F5
打开运行窗口
Alt-F1
获得PHP帮助
Alt-F2
用Google搜索
Alt-F3
用Wiki搜索哦
Alt-F5
在本标签页中打开当前目录中,与光标位置文本同名的文件
Alt-F6
在新标签页中打开当前目录中,与光标位置文本同名的文件
Ctrl-Alt-Shift-R
在Chrome中打开
Ctrl-Alt-Shift-X
在Firefox中打开
Ctrl-Alt-Shift-I
在IE中打开
在Safari中打开
Ctrl-Alt-Shift-O
通过Outlook发送当前文件
[转]notepad++正则表达式替换字符串详解
表达式说明
\t制表符.
\n新行.
.匹配任意字符.
|匹配表达式左边和右边的字符.例如,“ab|bc”匹配“ab”或者“bc”.
[]匹配列表之中的任何单个字符.例如,“[ab]”匹配“a”或者“b”.“[0-9]”匹配任意数字.
[^]匹配列表之外的任何单个字符.例如,“[^ab]”匹配“a”和“b”以外的字符.“[^0-9]”匹配任意非数字字符.
*其左边的字符被匹配任意次(0次,或者多次).例如“be*”匹配“b”,“be”或者“bee”.
+其左边的字符被匹配至少一次(1次,或者多次).例如“be+”匹配“be”或者“bee”但是不匹配“b”.
?
其左边的字符被匹配0次或者1次.例如“be?
”匹配“b”或者“be”但是不匹配“bee”.
^其右边的表达式被匹配在一行的开始.例如“^A”仅仅匹配以“A”开头的行.
”仅仅匹配以“e”结尾的行.
()影响表达式匹配的顺序,并且用作表达式的分组标记.
\转义字符.如果你要使用“\”本身,则应该使用“\\”.
例子:
原始串
str[1]abc[991];
str[2]abc[992];
str[11]abc[993];
str[22]abc[994];
str[111]abc[995];
str[222]abc[996];
str[1111]abc[997];
str[2222]abc[999];
目标串:
abc[1];
abc[2];
abc[11];
abc[22];
abc[111];
abc[222];
abc[1111];
abc[2222];
处理:
查找串:
str
abc
替换串:
abc[\1]
【1】正则表达式应用——替换指定内容到行尾
原始文本如下面两行
abcaaaaa
123abc444
希望每次遇到“abc”,则替换“abc”以及其后到行尾的内容为“abcefg”
即上面的文本最终替换为:
abcefg
123abcefg
解决:
①在替换对话框,查找内容里输入“abc.*”
②同时勾选“正则表达式”复选框,然后点击“全部替换”按钮
其中,符号的含义如下:
“.”=匹配任意字符
“*”=匹配0次或更多
注意:
其实就是正则表达式替换,这里只是把一些曾经提出的问题加以整理,单纯从正则表达式本身来说,就可以引申出成千上万种特例。
【2】正则表达式应用——数字替换
希望把
asdadas123asdasdas456asdasdasd789asdasd
替换为:
asdadas[123]asdasdas[456]asdasdasd[789]asdasd
在替换对话框里面,勾选“正则表达式”复选框;
在查找内容里面输入“[0-9][0-9][0-9]”,不含引号
“替换为:
”里面输入“[\0\1\2]”,不含引号
范围为你所操作的范围,然后选择替换即可。
实际上这也是正则表达式的使用特例,“[0-9]”表示匹配0~9之间的任何特例,同样“[a-z]”就表示匹配a~z之间的任何特例
上面重复使用了“[0-9]”,表示连续出现的三个数字
“\0”代表第一个“[0-9]”对应的原型,“\1”代表第二个“[0-9]”对应的原型,依此类推
“[”、“]”为单纯的字符,表示添加“[”或“]”,如果输入“其它\0\1\2其它”,则替换结果为:
asdadas其它123其它asdasdas其它456其它asdasdasd其它789其它asdasd
功能增强(byjiuk2k):
如果将查找内容“[0-9][0-9][0-9]”改为“[0-9]*[0-9]”,对应1或123或12345或…
大家根据需要定制
相关内容还有很多,可以自己参考正则表达式的语法仔细研究一下
【3】正则表达式应用——删除每一行行尾的指定字符
因为这几个字符在行中也是出现的,所以肯定不能用简单的替换实现
比如
123451265345
2345
需要删除每行末尾的“345”
这个也算正则表达式的用法,其实仔细看正则表达式应该比较简单,不过既然有这个问题提出,说明对正则表达式还得有个认识过程,解决方法如下
解决:
在替换对话框中,启用“正则表达式”复选框
在查找内容里面输入“345
”表示从行尾匹配
如果从行首匹配,可以用“^”来实现,不过EditPlus有另一个功能可以很简单的删除行首的字符串
a.选择要操作的行
b.编辑-格式-删除行注释
c.在弹出对话框里面输入要清除的行首字符,确定
【4】正则表达式应用——替换带有半角括号的多行
几百个网页中都有下面一段代码:
\n
在替换对话框启用“正则表达式”选项,这时就可以完成替换了
【5】正则表达式应用——删除空行
启动EditPlus,打开待处理的文本类型文件。
①、选择“查找”菜单的“替换”命令,弹出文本替换对话框。
选中“正则表达式”复选框,表明我们要在查找、替换中使用正则表达式。
然后,选中“替换范围”中的“当前文件”,表明对当前文件操作。
②、单击“查找内容”组合框右侧的按钮,出现下拉菜单。
③、下面的操作添加正则表达式,该表达式代表待查找的空行。
(技巧提示:
空行仅包括空格符、制表符、回车符,且必须以这三个符号之一作为一行的开头,并且以回车符结尾,查找空行的关键是构造代表空行的正则表达式)。
直接在”查找”中输入正则表达式“^[\t]*\n”,注意\t前有空格符。
(1)选择“从行首开始匹配”,“查找内容”组合框中出现字符“^”,表示待查找字符串必须出现在文本中一行的行首。
(2)选择“字符在范围中”,那么在“^”后会增加一对括号“[]”,当前插入点在括号中。
括号在正则表达式中表示,文本中的字符匹配括号中任意一个字符即符合查找条件。
(3)按一下空格键,添加空格符。
空格符是空行的一个组成成分。
(4)选择“制表符”,添加代表制表符的“\t”。
(5)移动光标,将当前插入点移到“]”之后,然后选择“匹配0次或更多”,该操作会添加星号字符“*”。
星号表示,其前面的括号“[]”内的空格符或制表符,在一行中出现0个或多个。
(6)选择“换行符”,插入“\n”,表示回车符。
④、“替换为”组合框保持空,表示删除查找到的内容。
单击“替换”按钮逐个行删除空行,或单击“全部替换”按钮删除全部空行(注意:
EditPlus有时存在“全部替换”不能一次性完全删除空行的问题,可能是程序BUG,需要多按几次按钮)。
1.在汉化的时候,是否经常碰到这样的语句需要翻译:
Code:
“Erroraddingthepost!
”;
“Erroraddingthecomment!
“Erroraddingtheuser!
如果有很多类似的文件一个一个翻译显然很累而且感觉很无聊。
其实可以这样处理,在Editplus里面用替换功能,在替换对话框选中“正则表达式”复选框:
查找原文件:
“Erroradding([^!
|"
|;
]*)
替换成:
“在增加\1时发生错误
这样替换之后发生了什么?
结果是:
“在增加thepost时发生错误!
“在增加thecomment时发生错误!
“在增加theuser时发生错误!
ok,接下来你会怎么做?
当然再替换一次把thepost、thecomment、theuser替换成你要翻译的词。
得到最后的结果:
“在增加帖子时发生错误!
“在增加评论时发生错误!
“在增加用户时发生错误!
2.要提取的单词在中间,比如:
cannotbedeletedbecause
cannotbeaddedbecause
cannotbeupdatingbecause
可以用这种方式:
在Editplus里面用替换功能,在替换对话框选中“正则表达式”复选框:
cannotbe([^]*)because
无法被\1因为
无法被deleted因为
无法被added因为
无法被updating因为
其余步骤如上。
在汉化量很大而且句式比较单调的情况下对效率的提高很明显!
解释一下:
([^!
]*)的意思是不等于!
和”和;
中的任何一个,意思就是这3个字符之外的所有字符将被选中(替换区域);
\1即被选中的替换区域所在的新位置(复制到这个新位置)。
3.经常手工清理一行一行地删除文本文件里面的空白行,其实可以交给Editplus更好的完成,在Editplus里面用替换功能,在替换对话框选中“正则表达式”复选框:
^[\t]*\n
替换部分为空就可以删除空白行了,执行一下看看:
)
abandon[2'
'
b9nd2n]v.抛弃,放弃
abandonment[2'
b9nd2nm2nt]n.放弃
abbreviation[2bri:
vi'
ei62n]n.缩写
abeyance[2'
bei2ns]n.缓办,中止
abide[2'
baid]v.遵守
ability[2'
biliti]n.能力
able['
eibl]adj.有能力的,能干的
abnormal[9b'
n0:
m2l]adj.反常的,变态的
aboard[2'
b0:
d]adv.船(车)上
1.
查找:
(^[a-zA-Z0-0\-]+)(
+)(.*)
替换:
@@@@@”\1″,”\2″,”\3″,
效果:
@@@@@”abandon”,”[2'
b9nd2n]“,”v.抛弃,放弃”,
@@@@@”abandonment”,”[2'
b9nd2nm2nt]“,”n.放弃”,
@@@@@”abbreviation”,”[2bri:
ei62n]“,”n.缩写”,
@@@@@”abeyance”,”[2'
bei2ns]“,”n.缓办,中止”,
@@@@@”abide”,”[2'
baid]“,”v.遵守”,
@@@@@”ability”,”[2'
biliti]“,”n.能力”,
@@@@@”able”,”['
eibl]“,”adj.有能力的,能干的”,
@@@@@”abnormal”,”[9b'
m2l]“,”adj.反常的,变态的”,
@@@@@”aboard”,”[2'
d]“,”adv.船(车)上”,
2.
\n
注:
要次替换内容为空
b9nd2n]“,”v.抛弃,放弃”,@@@@@”abandonment”,”[2'
b9nd2nm2nt]“,”n.放弃”,@@@@@”abbreviation”,”[2bri:
ei62n]“,”n.缩写”,@@@@@”abeyance”,”[2'
bei2ns]“,”n.缓办,中止”,@@@@@”abide”,”[2'
baid]“,”v.遵守”,@@@@@”ability”,”[2'
biliti]“,”n.能力”,@@@@@”able”,”['
eibl]“,”adj.有能力的,能干的”,@@@@@”abnormal”,”[9b'
m2l]“,”adj.反常的,变态的”,@@@@@”aboard”,”[2'
d]“,”adv.船(车)上”,@@@@@”abolish”,”[2'
b0li6]“,”v.废除,取消”,@@@@@”abolition”,”[9b2'
li62n]“,”n.废除,取消”
3.
@@@@@
“abandon”,”[2'
“abandonment”,”[2'
“abbreviation”,”[2bri:
“abeyance”,”[2'
“abide”,”[2'
“ability”,”[2'
“able”,”['
“abnormal”,”[9b'
“aboard”,”[2'
“abolish”,”[2'
b0li6]“,”v.废除,取消”,
ZenCoding让Notepad++代码书写健步如飞(XMLCSS应用)
Notepad++是一款无比轻巧便捷的代码编辑工具。
它无可挑剔的启动速度,优秀的语法高亮,干净整齐的代码缩进,便捷的括号高亮匹配赢得了无数人的喜爱。
但,不知道有多少同学跟我一样,在coding时被Notepad++粗陋的代码自动补全折磨的体无完肤(Notepad++那甚至不能叫自动完成)。
虽然无比羡慕诸如Dreamweaver之类的代码自动完成,但固于上述提到的几点Notepad++的优秀之处,纠结中毅然依旧坚守Notepad++。
而ZenCoding的横空出世,总算终结了这种纠结,让我们得以以一种无比帅气的方式书写代码。
先看一段演示视频吧(建议反复观摩,其中演示了ZenCoding的各种典型用法)
Notepad++安装ZenCoding插件
下载
Zen.Coding-Notepad++.v0.6.1.zip
解压
将解压所得的文件放入Notepad++程序的安装目录下的plugins文件夹。
重启Notepad++,即可开始使用ZenCoding。
ZenCoding用法
首先,我们先学习一下ZenCoding的缩写规则(其实就是CSS选择器)
E
元素名(div,p);
E#id
带id的元素(div#content,p#intro,span#error);
E.class
带class的元素(div.header,p.error.critial).id和class可以连写,如:
div#lumn.width;
E>
N
子元素(div>
p,div#footer>
p>
span);
E+N
兄弟元素(h1+p,div#header+div#content+div#footer);
E*N
多项元素(ul#nav>
li*5>
a);
E$*N
带序号的元素(ul#nav>
em-$*5);
接下来,我们来熟悉ZenCodingforNotepad++的快捷键,也是ZenCoding的精髓
【Ctrl+E】展开缩写(ExpandAbbreviation)
比如写下
div#page>
div.logo+ul>
li*3>
a
,按一下Ctrl+E,立马就可以转化成:
<
divid="
page"
>
<
divclass="
logo"
/div>
ulid="
navigation"
li>
ahref="
"
/a>
/li>
/ul>
【Ctrl+Shift+A】嵌套代码(WrapwithAbbreviation)
比如,我们想让写好的
helloworld<
/p>
,想在外层再套一个div,只需按下【Ctrl+Shift+A】,在弹出的对话框中输入:
div.wrap,回车。
此标签就能自动被嵌套。
甚至,我们可以玩的更炫一些,写好三行列表内容,全裸,此时没有任何标签。
只需按下【Ctrl+Shift+A】,输入ul>
li*
,回车。
这三行内容就能自动被ulli嵌套起来。
(不仅限于li列表哦)
【Ctrl+Shift+D】选中代码块(BalanceTagInward/Outward)
选中当前光标所在的代码块,长按可依次选中父块
【Ctrl+Alt+[,Ctrl+Alt+]】转到上一个/下一个编辑点(GotoNext/PreviousEditPoint)
按下可以依次跳到可输入内容的编辑点,省去了不停按方向键或鼠标来定位编辑点的麻烦。
【Ctrl+Alt+M】合并行(MergeLines)
将选中的多行代码合并为一行。
压缩css、js代码为一行时,这个很方便。
Ctrl+A,然后Ctrl+Alt+M