当前位置: 首页 > 知识库问答 >
问题:

如何使用OpenNLP从文本中获取位置?

徐佐
2023-03-14

我使用组块来标记数据,并从文本中获取位置。最初,我尝试从next中提取名词短语,当我们使用名词短语名称(也被称为名词短语)时,它无法使用。然后我转移到核心nlp的位置,我试着运行下面的代码

 * @param args the command line arguments
 */
public static void main(String[] args) {
    // TODO code application logic here
    try {

InputStream inputStreamTokenizer=new FileInputStream("文本文档中的D:\project\关系提取\Libraray\解析/en-token.bin");TokenizerModel TokenModel=new TokenizerModel(inputStreamTokenizer);

  //String paragraph = "Mike and Smith are classmates"; 
  String paragraph = "Tutorialspoint is located in Hyderabad"; 

  //Instantiating the TokenizerME class 
  TokenizerME tokenizer = new TokenizerME(tokenModel); 
  String tokens[] = tokenizer.tokenize(paragraph); 

  //Loading the NER-location moodel 
  InputStream inputStreamNameFinder = new 
     FileInputStream("D:\\project\\Relation Extraction in Text Document\\Libraray\\parsing/en-ner-location.bin");       
  TokenNameFinderModel location = new TokenNameFinderModel(inputStreamNameFinder); 

  //Instantiating the NameFinderME class 
  NameFinderME nameFinder;      
        nameFinder = new NameFinderME(location);

  //Finding the names of a location 
  Span nameSpans[] = nameFinder.find(tokens);        
  //Printing the spans of the locations in the sentence 
 for(Span s: nameSpans)        
     System.out.println(s.toString()+"  "+tokens[s.getStart()]);

我得到了一个错误:“java.lang.UnsupportedOperationException:还不受支持。”

“nameFinder=new NameFinderME(location);”处的错误符号说“exmp.TokenNameFinderModel无法转换为opennlp.tools.namefind.TokenNameFinderModel”的原因是什么

共有1个答案

司寇昱
2023-03-14

您有不正确的导入,这里是一个工作版本:

import java.io.FileInputStream;
import java.io.InputStream;

import opennlp.tools.namefind.NameFinderME;
import opennlp.tools.namefind.TokenNameFinderModel;
import opennlp.tools.tokenize.TokenizerME;
import opennlp.tools.tokenize.TokenizerModel;
import opennlp.tools.util.Span;

输出:[4..5)海得拉巴位置

 类似资料:
  • 我有一个解析树,它是opennlp中类的对象。我想打印解析树中的文本。例如,考虑以下句子: 。中的方法返回整个句子,而不仅仅是与解析树关联的字符串。有没有直接在OpenNLP中实现的方法?

  • 当我执行时,它也打印和,我如何在Python中使用selenium只获取示例文本?

  • 我试图从span(图片中的质量)获取文本,但我还没有找到它无法获取文本的原因。 感谢所有的帮助,我正在使用python。 我的代码: 从html:

  • 请不要使用“tika”作为答案。我已经尝试了这个问题的答案: 如何从PDF文件中提取文本? 我有这个PDF文件,https://drive.google.com/file/d/1aUfQAlvq5hA9kz2c9CyJADiY3KpY3-Vn/view?usp=sharing,我想复制文本。 输出为“提交日期:2019-10-21 16:03:36.093 |表单键:5544”,这只是文本的一部分

  • 问题内容: 例如,如果我有一个元素: 这是跨多行的: 是否可以使用Javascript找出文本中特定字符的位置(以x,y坐标表示)?如果没有,我可以得到文本中每行的y位置吗? 请注意 :我的应用程序中的标记中有很多文本,因此在每个字符/单词周围添加太多的处理内容。 问题答案: 如果您知道字符在文本中的字符串位置,则可以将字符包装在具有ID的或类似元素中,并找到该元素的x,y坐标。要做到这一点最简单

  • 我试图从下面的HTML代码中获取文本$1.00(我有xpath,所以不用担心)。为此,我们可以说xpath是//*[@id=“price-string”] 我尝试使用driver.findElement(by.xpath(“//*[@id=”price-string“]”)),后跟.getText()、.getAttribute(“TextContent”)、.getAttribute(“Inne