你好我有一个文本,我希望删除除第一个单词和几个特殊单词之外的所有其他内容。
极致 - 名词可达到的最高水平或程度;默认 - 动词同意或表示同意
坚持 - adj 不受恳求,劝说,要求,理性的影响; 名词非常坚硬的天然结晶碳,被视为宝石引用 - 动词预先提供
的证据
在这里,我必须保留'第一个单词',“动词”,“adj”,“名词”并删除其他所有内容; 这样就变成了
acme 名词
默认动词
坚定 adj noun
引用动词
在Notepad ++中是否有任何Python脚本或正则表达式;感谢。
答案 0 :(得分:3)
使用Notepad ++
尝试此操作找到什么?
\s*[-;]\s*( adj| verb| noun)[^\r\n;]*(;$)?
或匹配其他单词,然后adj,werb,名词也是:
\s*[-;]\s*( \S+)[^\r\n;]+(;$)?
匹配 - 或;记住这个词并将所有内容替换为行尾或;用它。
替换为:
\1
答案 1 :(得分:1)
与您想要的匹配的正则表达式如下所示:
^(\w+)\s+-\s+(\w+)(?:.*?(?=(adj|verb|noun)))?(?:(?:noun|verb|adj)(?:.*)?)?
请参阅http://regex101.com/r/yR5jW5
上的演示注意 - 这与“三个或更多特殊单词”不匹配。我没时间弄清楚为什么不呢;但它可能是显而易见的。这应该可以让你开始。