emeditor 正则表达式使用基础与实战 【百科全说】-凯发k8官方旗舰厅

腾讯视频/爱奇艺/优酷/外卖 充值4折起

一、基础篇
1.
^ 匹配行首,比如说查找^s, 就是查位于行首的 s
2.
.*?$ 这个用处比较大,但一般不单独使用,比如与上面的结合
比如 ^s.*?$,就是查以 s 为行首的行,其中 .* 是匹配任意字符,$ 代表行尾,?$ 是告诉程序你要定位到行尾。
3.
/n 这个很简单,就是换行符,用得也非常多,
比如 “/n”,替换成“/n”,就是把2个换行符替换成1个。
练习:
bas,bat =to,go(走)
chlor =green or chlorine(绿,氯)
chol =gallbladder(胆)
chondrio =cartilage(软骨)
erg =energe(能量)
err =to wander(流浪;漂泊),to err(偏离正道,犯错,犯罪)
ess,est =to be(存在)
est,ess =to be(存在)
a. 查找行首的a、e、c等字符;
^a|^e|^c
b. 查找以c开头的行,不包括换行符;
^c.*?$
c. 查找以e开头的行,包括换行符;
^e.*/n
d. 查找两个相连的换行符,将它替换成一个;
/n
/n
4.
/s 是表示一个半角空格(半角和全角看不懂的请先google一下),
/t 指的是一个tab空格,不清楚的话在emeditor里敲一次tab键,出来的就是它了。
查 /s 的时候是包括tab空格的,但查 /t 的时候却不能包括半角空格,其实这两个都非常有用。
/s 与 /n 连用,那就是非常实用的查行尾空格的表示法了
5.
{1,n} 大括号内的数字是表示数量的范围,它的前面必须有个东西,比如说“/s{1,3}”就表示1到3个空格通吃,
如果用“/s{3}”呢,就意味着3个空格
6.
[a-z] 表示26个字母中的任一个,如果在替换窗口内勾选“区分大小写”则表示26个小写字母,否则大小写通吃。
练习:
acousto =sound(声音)
acro = high(高)
act =do(行动)
acuti = acuate (尖的,尖锐的)
acousto = sound(声音)
aer,aero,ar,aro=air(空气)
after =(在……之后)
1)删除下列文本中的行首空格(请结合上一练习);
^/s*
2)删除行尾空格;
/s*$
3)将文本中的tab空格替换成半角空格;
4)查找任意相连的四个字母;
[a-z]{4}
5)查找位于行首的长度为3-5个字母的单词(注意必须是完整单词,这题稍微要动动脑筋,找一下规律)。
^[a-z]{3,5}
小结:使用正则表达式来处理文档,最大的关键在于仔细去分析文档中的规律,只要有规律可以利用,我们就能进行批量处理,工作效率就是这么提高的。一定要多想,更重要的是多试,有时候想半小时还不如实际动手操作5分钟。
7.
[] 就是上面的[a-z]往下讲,用中括号括起来表示括号某一个字符,你也可以这样表示:[abc],意思是a、b、c三个字母中任一个都行。
但[] 与^结合有一个非常实用的用法,比如^[^c],这表示位于行首的除 c 之外的字母。
8.
() 单独使用的话没有什么意义,用了它就表示引用括号里的内容,然后用/1/2/3…… 来一一调用
/1 是第一个小括号里的内容,/2 是第二个小括号里的内容,依此类推。
9.
[[:unicode:]] 用它来将中文字符和英文字符区分开来。
练习:
document.selection.replace("瑞秋","rachel",eefindnext | eereplaceall | eefindreplaceregexp);
document.selection.replace("钱德勒","chandler",eefindnext|eereplaceall|eefindreplaceregexp);
document.selection.replace("钱德","chandler",eefindnext | eereplaceall|eefindreplaceregexp);
document.selection.replace("乔伊","joey",eefindnext | eereplaceall | eefindreplaceregexp);
document.selection.replace("菲比","phoebe",eefindnext | eereplaceall | eefindreplaceregexp);
然后分别执行下述操作:
1.将 ("瑞秋","rachel", 改为 ("rachel","瑞秋",
其它各行参照此格式进行修改;
查找:(".*?"),(".*?")
替换:/2,/1
2.删除所有中文字符;
[[:unicode:]]
10.特殊字符:
^
$
( )
[ ]
{ }
.
?

*
|
这些字符都是在正则表达式中被“征用”了,称之为特殊字符,引用的时候,必须前面加 "/" 进行区分,比如你要用到 "$" 字符的时候,必须使用 "/$",这样程序才不会以为你是在匹配行尾。
练习:
[00:53.90][monica]:there's nothing to tell!
[00:55.60][monica]:he's just some guy i work with!
[00:57.90][joey]:c'mon, you're going out with the guy!
[00:59.10][joey]:there's gotta be something wrong with him!
[01:02.70][chandler]:all right joey, be nice.
[01:04.80][chandler]:so does he have a hump? a hump and a hairpiece?
然后分别执行下述操作:
1.删除带"[]"的内容;
/[.*/]
2.做完上一步后,删除位于行首的 ":"。

二、实战篇
练习1:
首先,把以下五个小零件翻译出来,这一定很简单,它们是:
第一个零件:这项计划提供机会,翻成英语是this plan providedopportunities。
第二个零件:为研究者,翻成英语是forresearchers。
第三个零件:从印度和外国来的,翻成英语是from india andabroad。
第四个零件:研究老虎,翻成英语是to studytigers。
第五个零件:在保护区里,翻成英语是in thereserves。
然后将这段文本替换成如下格式:
首先,把以下五个小零件翻译出来,这一定很简单,它们是:
第一个零件:这项计划提供机会,翻成英语是this plan providedopportunities。
第二个零件:为研究者,翻成英语是forresearchers。
第三个零件:从印度和外国来的,翻成英语是from india andabroad。
第四个零件:研究老虎,翻成英语是to studytigers。
第五个零件:在保护区里,翻成英语是in thereserves。
提示:删除多余的换行符。
/n
练习2:
and bigger boobs! 大笨蛋!
"yeah, see.. you took mine. chandler, what about you?" 你知道我的了。钱德,你呢?
"uh, if i were omnipotent for a day, i'd.. make myself omnipotent forever." 如果有一天我变得全能,我要让自己变得永远全能。
"see, there's always one guy." 看吧,这儿总是有一个家伙。
"if i had a wish, i'd wish for three more wishes." 如果我有愿望的话,我希望我还能多有三个愿望。
然后将这段文本替换成如下格式:
q: and bigger boobs!
a: 大笨蛋!
q: "yeah, see.. you took mine. chandler, what about you?"
a: 你知道我的了。钱德,你呢?
q: "uh, if i were omnipotent for a day, i'd.. make myself omnipotent forever."
a: 如果有一天我变得全能,我要让自己变得永远全能。
q: "see, there's always one guy."
a: 看吧,这儿总是有一个家伙。
q: "if i had a wish, i'd wish for three more wishes."
a: 如果我有愿望的话,我希望我还能多有三个愿望。
要求:使用一个查找和替换语句完成。
友情提示:这段文本是将excel文件另存为"制表符分隔”的文本文件得到的。
参考答案:
查找:(^.*?)/t(.*?$)
替换:q: /1/na: /2
练习3:
4 and bigger boobs! 大笨蛋!
5 "yeah, see.. you took mine. chandler, what about you?" 你知道我的了。钱德,你呢?
6 "uh, if i were omnipotent for a day, i'd.. make myself omnipotent forever." 如果有一天我变得全能,我要让自己变得永远全能。
7 "see, there's always one guy.""" 看吧,这儿总是有一个家伙。
8 "if i had a wish, i'd wish for three more wishes.""" 如果我有愿望的话,我希望我还能多有三个愿望。
然后将这段文本替换成如下格式:
q: and bigger boobs!
a: 大笨蛋!
q: yeah, see.. you took mine. chandler, what about you?
a: 你知道我的了。钱德,你呢?
q: uh, if i were omnipotent for a day, i'd.. make myself omnipotent forever.
a: 如果有一天我变得全能,我要让自己变得永远全能。
q: see, there's always one guy.
a: 看吧,这儿总是有一个家伙。
q: if i had a wish, i'd wish for three more wishes.
a: 如果我有愿望的话,我希望我还能多有三个愿望。
要求:使用一个查找和替换语句完成。
友情提示:""是固定的,变的只是原先位于行首的数字。
参考答案:
查找:(^/d.*?)/t(.*?/t)(.*?$)
替换:q: /2/na: /3
练习4:
valedictory "a.告别的
n.告别演讲"
close-hauled a.张满帆的,迎风航行的
mean "a.吝啬的,卑鄙的,简陋的,不舒服的,平庸的,低劣的,中间的,中等的,平均的,普通的
n.中间,中部,中庸"
bumper-to-bumper a.前后紧接且行进缓慢的车队的
between a rock and a hard place ph.左右为难,进退两难
have one's head screwed on the right way ph.头脑清醒
mimic "v.(通过学养)戏弄,模仿,与。。。极相似
n.善于模仿的人,能模仿人的动物,滑稽剧演员
a.模仿的,好模仿的,模拟的,假装的"
1.将它转换成下面这样的格式:
valedictory "a.告别的n.告别演讲"
close-hauled a.张满帆的,迎风航行的
mean "a.吝啬的,卑鄙的,简陋的,不舒服的,平庸的,低劣的,中间的,中等的,平均的,普通的n.中间,中部,中庸"
bumper-to-bumper a.前后紧接且行进缓慢的车队的
between a rock and a hard place ph.左右为难,进退两难
have one's head screwed on the right way ph.头脑清醒
mimic "v.(通过学养)戏弄,模仿,与。。。极相似n.善于模仿的人,能模仿人的动物,滑稽剧演员a.模仿的,好模仿的,模拟的,假装的"
2.处理成q&a格式的词库:
q: valedictory
a: "a.告别的n.告别演讲"
q: close-hauled
a: a.张满帆的,迎风航行的
q: mean
a: "a.吝啬的,卑鄙的,简陋的,不舒服的,平庸的,低劣的,中间的,中等的,平均的,普通的n.中间,中部,中庸"
q: bumper-to-bumper
a: a.前后紧接且行进缓慢的车队的
q: between a rock and a hard place
a: ph.左右为难,进退两难
q: have one's head screwed on the right way
a: ph.头脑清醒
q: mimic
a: "v.(通过学养)戏弄,模仿,与。。。极相似n.善于模仿的人,能模仿人的动物,滑稽剧演员a.模仿的,好模仿的,模拟的,假装的"
提示:题1需要多动动脑筋,要注意观察材料的特点,利用好tab符号,需要搭一个跳板。题2则与练习1是一样的解决方法。
参考答案:
1.分三步走
a、查找:^(.*?/t.*?$)
替换:#/1
因为不能直接找出不带/t的行,那就先给带/t的行做个标记;
b、查找:/n([^#])
替换:/1
注意/n([^#])与(^[^#])的细微区别
c、查找:^#
替换:
删除掉行首多余的#号
2.参看练习2的解答,大部分用excel另存的带制表符分隔的文本都可以照这样的方式处理。

06/17 07:52
经常用到emeditor来编辑纯文本文档。最近接触了正则表达式,感受到其功能非常强大。 正则表达式实在包含的内容太多, 仅仅用一篇文章来涵盖是没可能的了, 所以我只是简要的做些介绍和基本的模式应用举例. 正则表达式, 英文 regular expression, 简写regexes或regex. 应用概述: 提供与预期的搜索结果匹配的确切文本来进行字符串的搜索和替换操作, 这种技术不仅仅用于开发领域, 更被集成到一些常见的文本扩展编辑器, 如ultraedit, emeditor等. 历史上第一
05/08 15:46
网线制作是搞网络的人的必修课,也是最为基础的实战项目。网线制作方法有很多,我们在此简单的制作一下现在出现最多的rj45通用8针网线制作方法。 下面是常见网线制作方法的详细步骤: 我们使用网线钳的剥皮功能剥掉网线的外皮,会看到彩色与白色互相缠绕的八根金属线。橙、绿、蓝、棕四个色系,与他们相互缠绕的分别是白橙、白绿、白蓝、白棕,有的稍微有点橙色,有的只是白色,如果是纯色,千万要注意,不要将四个白色搞混了。我们分别将他们的缠绕去掉,注意摆放的顺序是:橙绿蓝棕,白在前,蓝绿互换。也就是说最终的结果是:白
07/27 14:52
网线制作是搞网络的人的必修课,也是最为基础的实战项目。网线制作方法有很多,我们在此简单的制作一下现在出现最多的rj45通用8针网线制作方法。 网线插座教程可以参考这篇文章:墙壁网线插座接法详细图解 我们使用网线钳的剥皮功能剥掉网线的外皮,会看到彩色与白色互相缠绕的八根金属线。橙、绿、蓝、棕四个色系,与他们相互缠绕的分别是白橙、白绿、白蓝、白棕,有的稍微有点橙色,有的只是白色,如果是纯色,千万要注意,不要将四个白色搞混了。我们分别将他们的缠绕去掉,注意摆放的顺序是:橙绿蓝棕,白在前,蓝绿互换。
06/10 12:59
关于电脑的网线怎么做是搞网络的人的必修课,也是最为基础的实战项目。网线制作方法有很多,我们在此简单的制作一下现在出现最多的rj45通用8针网线制作方法。 我们使用网线钳的剥皮功能剥掉网线的外皮,会看到彩色与白色互相缠绕的八根金属线。橙、绿、蓝、棕四个色系,与他们相互缠绕的分别是白橙、白绿、白蓝、白棕,有的稍微有点橙色,有的只是白色,如果是纯色,千万要注意,不要将四个白色搞混了。我们分别将他们的缠绕去掉,注意摆放的顺序是:橙绿蓝棕,白在前,蓝绿互换。也就是说最终的结果是:白橙、橙、白绿、蓝、白蓝、
12/18 20:27
很多功能,各大文本编辑器都会提供,而且,各大文本编辑器都会提供配置功能,让它更加适合您,而不是每个人的编辑器都一个样。然而,在配置方面,各 个编辑器却不尽相同。有些只提供简单的一些配置,有些配置功能却十分强大;有些需要通过文本字符(配置文件)方式配置,如vim;有些则是通过图形化界面 配置,如emeditor等,当然,很多是二者兼而有之。对于初学者或者普通用户,对编程不了解或不想折腾的或对字符厌倦的),它们基本不会喜欢这种配置方式,对他们来说,配置文件方式就是“坏”的。相应的,图形方式配置也会存
07/04 13:26
下面就让我们一起来通过图形化界面配置适合自己的emeditor编辑器. 1.众多的图形界面配置功能 通过查看emeditor的安装目录,可以发现,emeditor有几个配置文件,理论上应该可以通过修改配置文件来达到配置emeditor的目 的.然而,打开配置文件一看,如果您用过vim,配置过vim的话,会发现emeditor的配置文件没法看.既然这样,那我们自然就会使用图形画界面来 配置了. 启动emeditor,点击菜单栏上的工具菜单,该菜单下的几个子菜单就是配置用的.先来预览一下自定义和配置
10/11 02:49
emeditor professional怎么使用呢?emeditor professional是一款简单好用的文本编辑器,支持多种配置,自定义颜色.字体.工具栏.快捷键设置,可以调整行距,避免中文排列过于紧密,具有选择文本列块的功能(按alt键拖动鼠标),并允许无限撤消.重做,总之功能多多,使用方便,是替代记事本的最佳编辑器. 安装版下载: 绿色版下载: 下面就让我们一起来通过图形化界面配置适合自己的emeditor编辑器. 1.众多的图形界面配置功能 通过查看emeditor的安装目录,可以
04/08 02:17
正则表达式就是处理字符串的方法,它以行为单位来进行字符串的处理行为,正则表达式通过一些特殊符号的辅助,可以让用户轻易达到查找、删除、替换某特定字符串的处理程序。 正则表达式基本上就是一种“表示法”,只要工具程序支持这种表示法,那么该工具程序就可以利用正则表达式处理字符串。例如vi,grep,awk,sed等。 正则表达式和之前的bash通配符是两个完全不同的东西,两者毫无关系,这个要注意下。 # grep [-a] [-b] [--color=auto] ‘string’ filename -a
11/15 07:19
使用awk作为文本处理工具,正则表达式是少不了的。 要掌握这个工具的正则表达式使用。其实,我们不必单独去学习它的正则表达式。正则表达式就像一门程序语言,有自己语法规则已经表示意思。 对于不同工具,其实大部分表示意思相同的。在linux众多文本处理工具(awk,sed,grep,perl)里面用到正则表达式。其实就只有3种类型。详细可以参考:linux shell 正则表达式(bres,eres,pres)差异比较 。只要是某些工具是属于某种类型的正则表达式。那么它的语法规则基本一样。 通过那篇文
网站地图