正则表达式讨论

用(powergrep)软件,提取“It+系动词+形容词”结构 的正则表达式应该如何写?
1.使用BNC语料
2.先把BNC净化
3.观察BNC语料
4.对BNC赋码
5.写出正则表达式
6.用powergrep检索
对系动词的定义和具体个数的界定用朗文口笔语语法中的操作。

这个问题的关键是如何对净化后的BNC进行赋码和如何根据要求写出合适的正则表达式?

向高手求教!不胜感激!
 
回复: 正则表达式讨论

下面是从梁、李、许的《语料库应用教程》里的表达式中截取的:

\bit_\w+\s\S+_VB\w+\s\S+_J\w+


用(powergrep)软件,提取“It+系动词+形容词”结构 的正则表达式应该如何写?
1.使用BNC语料
2.先把BNC净化
3.观察BNC语料
4.对BNC赋码
5.写出正则表达式
6.用powergrep检索
对系动词的定义和具体个数的界定用朗文口笔语语法中的操作。

这个问题的关键是如何对净化后的BNC进行赋码和如何根据要求写出合适的正则表达式?

向高手求教!不胜感激!
 
回复: 正则表达式讨论

用(powergrep)软件,提取“It+系动词+形容词”结构 的正则表达式应该如何写?
1.使用BNC语料
2.先把BNC净化
3.观察BNC语料
4.对BNC赋码
5.写出正则表达式
6.用powergrep检索
对系动词的定义和具体个数的界定用朗文口笔语语法中的操作。

这个问题的关键是如何对净化后的BNC进行赋码和如何根据要求写出合适的正则表达式?

向高手求教!不胜感激!
既然用BNC,提取的结构若是如上所列的"It+系动词+形容词",那么,去corpus.byu.edu直接检索即可, 无需什么特殊工具或正则. 具体做法是,在WORDS框内,键入" It [v*]" (不用引号,下同),COLLCATES框内键入"[aj*]".附图可作参考.
 

附件

  • BNC.jpg
    BNC.jpg
    29.2 KB · 浏览: 131
回复: 正则表达式讨论

谢谢dingguoqi和xusun575的好建议,真的很感激!再次谢谢你们!xusun575的建议sharpen了我的思考。
希望并为了和大家一起学习、互动,现在把我的问题推进一步。呵呵!似乎每个初涉语料库的同学都会遇到一下两个问题。

一、如何根据自己的设想对一定文本赋码?二、如何根据自己的设想对赋码文本进行正则检索?

[针对以上两个问题,有人曾经提出更深刻的问题:
1.赋码是对文本的丰富还是强加?赋码当然方便了研究,观察,但是赋码是文本的一部分还是文本之外的东西?
2.怎样的正则检索对于自己的观察和研究是全面的?如何做到全面?
3.赋码和检索如何对接?怎样才算实现自己设想的正则检索?]
 
回复: 正则表达式讨论

根据xusun575的建议,我用BYU-BNC试了一下:
有一些考量与大家分享:
1. It [v*] [aj*] 这个检索中的[v*]不一定都是系动词
2. BYN-BNC 设定的最大Collocates是[-9,+9],让我想到It , [v*] ,[aj*] 三者之间的距离问题也应该认真考虑。
3. 如何解决It , [v*] ,[aj*] 有可能跨越句号,三者跨句的问题?
 
回复: 正则表达式讨论

这个问题非常有意思,目前主流的这几种赋码确实没有把系动词给单独赋码,这就出现上面提到的那种检索出来未必一定是系动词的情况。从另一个角度讲,语法学家把系动词加表语的这种情况单独分出来有点弱智,这种划分是否解决了实际问题?没有多少现实意义。其实这完全属于谓语的一种情况而已,或者说是动词加补语的情况。
再从正则表达式的角度去讲,即便是这个问题确实很复杂,但不是无解,至少有人写出来了,感兴趣的可以下载GrammarScope这个软件,从里面找那个正则表达式,不过需要修改,那表达式非常复杂,好多行,需要分析很长时间才有可能看懂,如果你自己写出的表达式连两三行都到不了,那么那个表达式是没有多少可能读懂的,因为Grammarscope软件中采用的内核是斯坦福大学开放的,它的赋码又是一个流派。
希望有正则表达式的高手能够把里面的表达式转成CLAWS赋码可用的表达式并且发布出来。
 
回复: 正则表达式讨论

It + 系动词+ adj的正则表达式可以这样写,如下:
(?i)((?=[^.\n]*\w{1,}_PPH1 (?i:is|'s|was|seems|seemed|appears|appeared|looks|looked|tastes|tasted|smells|smelled|sounds|sounded|feels|felt|keeps|kept|gets|got|turns|turned|grows|grew|stays|stayed|remains|remained|resembles|resembled|becomes|became)_V\w{1,} \w{1,}_J\w{1,})[^.\n]+\.?)
这个表达式是用于提取完整的It + 系动词+ adj的句子的,在南燕飞(程南昌)的CN_Regex软件中测试成功,但是提取时间可能稍长点。

如果是要提取 系动词+ adj的结构的句子可能就比这个复杂些,而且提取的时间更长,也是采用CN_Regex,提取的时候软件显示未响应,其实是在工作中,需要的时间非常长,需要耐心等待。
系动词+ adj的正则表达式
(?i)((?=[^.\n]*(?i:am|is|are|r|be|being|'s|'re|'m|was|were|been|s|ai|m|art|ar|wase|seem|seems|seemed|seeming|appear|appears|appeared|look|looks|looked|taste|tastes|tasted|smell|smells|smelled|sound|sounds|sounded|feel|feels|felt|keep|keeps|kept|get|gets|got|turn|turns|turned|grow|grows|grew|stay|stays|stayed|remain|remains|remained|resemble|resembles|resembled|resembling|become|becomes|became|becoming)_V\w{1,} \w{1,}_J\w{1,})[^.\n]+\.?)

说明一下:这个表达式中含有几个古英语用词,不要感觉奇怪。
CN_Regex没有对正则表达式长度进行限制,对于并列特别多的这种表达式需要等的时间较长。上面的表达式中的系动词涵盖了绝大多数系动词,还有少量的没有包含在内,对于没有包含在内的可以根据自己需要进行添加。
 
Back
顶部