0

我已经使用 stanford nlp 从该输出中解析了一些文本文件,我需要提取与以下模式匹配的文本

open bracket followed by NP or NNP or NNS etc

输入字符串

(NP (DT the) (NNP sample) (NN program))

结果字符串

the ) sample ) program )

我已经尝试了下面的正则表达式,但它与我所需的模式不匹配

test.replaceAll("//(//NP|//(//JJ|//(//NNS|//(//NNP|//(//NN|//(//DT|//(//CD|//(//FW|//(//WHNP|//(//WDT|//(//VBN|//(//PRP", "")
4

2 回答 2

2

我不知道为什么你有这么多的斜线。

尝试这个:

test = test.replaceAll("\\((NP|JJ|NNS|NNP|NN|DT|CD|FW|WHNP|WDT|VBN|PRP)", "");

这是此代码工作(正确)的现场演示

于 2013-08-27T04:08:22.603 回答
0

尝试"\\(NP|\\(JJ|\\(NNS|\\(NNP|\\(NN|\\(DT|\\(CD|\\(FW|\\(WHNP|\\(WDT|\\(VBN|\\(PRP"

斜线是错误的。使用\\代替/

于 2013-08-27T04:01:36.627 回答