引言:标准英文句式不会写?逐个百度google太麻烦?快用Antconc啊,导入语料仅需几步操作即可帮你分析词频,找到常用搭配!
一、正则常用特殊字符
字符 | 描述 |
---|---|
^ | 匹配输入字符串的开始位置。 |
$ | 匹配输入字符串的结束位置。 |
* | 匹配前一个子表达式零次 或多次 。例如,zo* 能匹配 z 以及 zoo 。* 等价于{0,} 。 |
+ | 匹配前面的子表达式一次 或多次 。例如,’zo+ ’ 能匹配 “zo ” 以及 “zoo ”,但不能匹配 “z ”。+ 等价于 {1,} 。 |
? | 匹配前面的子表达式零次 或一次 。例如,"do(es) ?" 可以匹配 “do ” 或 “does ” 。? 等价于 {0,1} 。 |
. | 匹配除换行符 \n 之外的任何单字符。 |
() | 标记一个子表达式的开始和结束位置。 |
[] | 中括号表达式。 |
{} | 标记限定数量符。如wor{2} 可以匹配words 而不能匹配word |
x|y | 匹配 x 或 y。例如,‘z|food’ 能匹配 “z” 或 “food”。’(z|f)ood’ 则匹配 “zood” 或 “food”。 |
[xyz] | 字符集合,等价于x|y|z |
[^xyz] | 负值字符集合。匹配未包含的任意字符。例如, ‘[^abc]’ 可以匹配 “plain” 中的’p’、‘l’、‘i’、‘n’。 |
[a-z] | 字符范围。 |
[^a-z] | 负值字符范围。如’[^a-z]’ 可以匹配任何不在 ‘a’ 到 ‘z’ 范围内的任意字符。 |
二、正则常用元字符
字符 | 描述 |
---|---|
\s | 匹配任何空白字符。 |
\S | 匹配任何非 空白字符。 |
\w | 匹配字母、数字、下划线。等价于’[A-Za-z0-9_]’。 |
\W | 匹配非 字母、数字、下划线。等价于 ‘[^A-Za-z0-9_]’。 |
\b | 匹配一个单词边界。例如 ‘er\b ’ 可以匹配"never " 中的 ‘er ’,但不能匹配 “verb ” 中的 ‘er ’。 |
\B | 匹配非 单词边界。‘er\B’ 能匹配 “verb” 中的 ‘er’,但不能匹配 “never” 中的 ‘er’。 |
\d | 匹配一个数字字符。等价于 [^0-9]。 |
\D | 匹配一个非 数字字符。等价于 [^0-9]。 |
三、英文常用词性对照表整理
词性标记 | 英文全称 | 中文解释 | 示例 |
---|---|---|---|
AD | Adverbs | 副词 | 包括情态副词、频率副词、程度副词、连接副词等 |
CC | Coordinating conjunction | 并列连词 | 和、与、或、或者 |
CS | Subordinating conj | 从属连词 | 若,如果,如 |
DT | Determiner | 限定词,冠词 | the,a,an,this,every,each,any,your,their,whose等) |
EX | Existence There | 存在词汇 | there |
IN | Prepositions and Subordinating Conjunctions | 介词和从属连词 | in,about,to |
JJ | Noun-modifier other thannouns | 其他名词形容词 | 共同/JJ的/DEG目的/NN 他/PN是/VC男//JJ的/DEG |
NN | Common nouns | 普通名词(单数或复数) | 桌子(一般正则用_N\w* ) |
NR | Proper nouns | 专有名词 | 天安门 |
VB | Verbs (base form) | 动词原形 | |
VH | 动词"有" 的词类标记 | have | |
VV | verbs | 其他动词 | 情态动词,提升谓词(如“can”),控制动词(如“要”、“想”), 行为动词(如“走”),心理动词(如“喜欢”、“了解”、“怨恨” |
VA | Predicative adjective | 谓词形容词 | 太阳红彤彤/VA |
MD | Modal Verbs | 情态动词 | can,may |
VC | Copula | 系动词 | am.is.are,was |
RB | Adverbs | 副词 | |
TO | to | 单词to | |
RP | Particles | 小品词 | along,away,by,down,in,off,on,out,over |
以下根据Antconc
软件以及词性标注数据,做了一个词频如下图
然后导出到Excel中进行清洗,得到如下图,并进行重点标注,方便正对性记忆。
四、使用案例
首先,我们使用已词性标记的英文语料,标记形式如下图。可见词性标记先将文本内容分词(常用HMM隐马模型进行词性标注任务),然后在每个词后面加入_<词性缩写>
来达到标记效果,如The_DT
表示标记为冠词
的单词The
。
在了解了具体词性标注文本格式后,我们在匹配想要的句式结构时,就可以利用<原词>_<词性缩写>
格式特点来写正则表达式。
【句式1】:be动词+冠词/副词(if any)+形容词+名词/介词
【正则表达式】:
\S+_VB\w*\s\S+((_DT)|(_RB\w*))\s\S+_JJ\w*\s\S+((_NN\w*)|(_IN))\s
【部分解释】:
\S+
意图匹配下划线_
前的非空原词字符串,+
表示非空字符\S
有1
个或多
个,这样我们就可匹配到_
前的一个任意长度单词(字符串),例如该项可匹配到is_VBZ
中的is
。_VB\w*\s
是匹配词性,但是词性按粗粒度到细粒度划分有很多,比如VB
(动词原形)下属有VBZ
(第三人称单数动词),VBG
(动名词或现在分词),VBP
(非第三人称单数动词)。因此,我们在后面加\w*
表示可以匹配0
或多个字符(*
采用贪心匹配,选择最长字符作为结果),最后因为词与词之间是空格,因此再加入\s
用来匹配一个空字符。例如该项可匹配到is_VBZ
中的_VBZ(空格)
。((_DT)|(_RB\w*))
意图匹配DT冠词或RB副词,()
中为子表达式,如(_DT)
将_DT
作为一个整体,通过|
或关系对冠词或副词进行匹配。例如该项可匹配到also_RB
中的_RB
或a_DT
中的_DT
。- 其余原理相似,不再赘述。
【句式1的其他等价写法】:能合并同类项可以少些点。
\S+_VB\w*\s((\S+_DT)|(\S+_RB\w*))\s\S+_JJ\w*\s\S+((_NN\w*)|(_IN))\s
\S+_VB\w*\s((\S+_DT\s\S+)|(\S+_RB\w*\s\S+))_JJ\w*\s\S+((_NN\w*)|(_IN))\s
得到结果如下图
可见有驸马标记,为了简洁好看,我们可以通过全局设置将其隐藏,如下图
最终结果如下图,可见有很多实用的论文书面搭配。
【句式2】:形容词+名词+have(has)+动词过去式+that
【正则表达式】:
\S+_JJ\w*\s\S+_N\w*\s\S+_VH\w*\s\S+_VV\w*\sthat
【部分解释】:
VH\w*
意图匹配动词有
及其下属词性,如have,has等。\sthat
注意匹配的是(空格)that
VV
匹配其他动词词性,如shown,found等。
【句式3】:形容词+名词+动词(任意形式)+that
【正则表达式】:
\S+_JJ\w*\s\S+_N\w*\s\S+_V\w*\sthat
【句式4】:…+形容词+classifier(s)+…
【正则表达式】:
\S+_JJ\sclassifiers?
【部分解释】:
classifiers?
意图匹配classifier
后面的字符s
可有可无,可匹配到classifier
以及classifiers
。
【句式5】:however/although/nevertheless(固定连词)+带有形容词的从句
【正则表达式】:
((however)|(although)|(nevertheless)).+\S+_JJ\w*\s
【部分解释】:
.+
匹配如although
之后的长度为1
及以上非换行符\n
字符串。本例中匹配although_IN in_IN many_JJ
中的_IN in_IN(空格)
【句式6】:we/study/research/paper+任意词(if any)+动词
【正则表达式】:
((we)|(study)|(research)|(paper))_\S+\s(\S+_\S+\s)?\S+_VV\w*\s
如果想精确性查找This paper+任意词(if any)+动词
则可以使用
this_DT\spaper_NN\s(\S+_\S+\s)?\S+_VV\w*\s
【部分解释】:
(\S+_\S+\s)?
匹配0
个或1
个任意词<原词>_<词性>(空格)
,若替换为*
则匹配0
个或多个
【注】:修改底部KWIC
的排序方式,从左到右依次按照ASCII
码大小排序,修改后排序方式变化但总记录数不变。
【句式7】:动词+任意词(if any)+question
【正则表达式】:
\S+_VV\w*\s(\S+_\S+\s)?questions?
【部分解释】:
(\S+_\S+\s)?
匹配0
个或1
个任意词<原词>_<词性>(空格)
,若替换为*
则匹配0
个或多个questions?
匹配question
和questions
【句式8】:This paper+be动词+动词被动+as follows
【正则表达式】:
paper_NN\s\S+_VB\w*\s\S+_VV\w*
附录-完整词性表
英文简写 | 英文全称 | 中文解释 |
---|---|---|
CC | Coordinating Conjunctions | 并列连词 |
CD | Cardinal Numbers | 基数词 |
DT | Determiners | 限定词(例:the,a,an,this,every,each,any,your,their,whose等) |
EX | Existence There | 存在词汇there |
FW | Foreign Words | 外来语/词 |
IN | Prepositions and Subordinating Conjunctions | 介词和从属连词 |
JJ | Adjectives | 形容词 |
JJR | Comparative Adjectives | 形容词比较级 |
JJS | Superlative Adjectives | 形容词最高级 |
LS | List Item Markers | 列表项标记(例:1. , 2., a, a., ….) |
MD | Modal Verbs | 情态动词 |
NN | Common Nouns(Singular or Mass) | 普通名词(单数或复数) |
NNS | Common Nouns (Plural) | 普通名词(复数) |
NNP | Proper Nouns (Singular) | 专有名词(单数) |
NNPS | Proper Nouns (Plural) | 专有名词(复数) |
PDT | Predeterminers | 前置限定词(例:both,all…) |
POS | Possessive Endings ‘s | 以’s结束的词(例:he’s, it’s.) |
PRP | Personal Pronouns | 人称代词(例:i,me,my,you…) |
PRP$ | Possessive Pronouns | 物主代词(例:mine,ours,thine,yours,his,hers,its…) |
RB | Adverbs | 副词 |
RBR | Comparative Adverbs | 程度副词(例:hard,fast,early,well,badly,far,quietly,carefully,happily …) |
RBS | Superlative Adverbs | 副词最高级 |
RP | Particles | 小品词(例:along,away,back,by,down,forward,in,off,on,out,over,round,under,up…) |
SYM | Symbols | 符号 |
TO | to | 单词to |
UH | Interjection | 感叹词(例:aha, ahem, ahh, ahoy, alas, arg, aw, bam, bingo, blah, boo, bravo, brrr,oh …) |
VB | Verbs (base form) | 动词原形 |
VBD | Verbs (past tense) | 动词(过去时态) |
VBG | Verbs (gerund or present participle) | 动词(动名词或现分词) |
VBN | Verbs (past participle) | 动词(过去分词) |
VBP | Verbs (non 3rd person singular present) | 动词(非第三人称单数) |
VBZ | Verbs (3rd person singular present) | 动词(第三人称单数) |
WDT | Wh-determiner | Wh开头的限定词(例:what,which…) |
WP$ | Possessive wh-pronoun | Wh开头代词的所有格(例:whom, whose…) |
WRB | Wh-adverb | Wh开头的副词(例:when, where, why, how, whence, whereby, wherein, whereupon, and how) |
【参考资料】
[1] 菜鸟教程.正则表达式-元字符
[2] stanfordCorenlp在python3中的安装使用+词性学习
[3] 斯坦福Stanford coreNLP宾州树库的词性标注规范