当前位置: 首页>>代码示例>>Java>>正文


Java TregexPatternCompiler类代码示例

本文整理汇总了Java中edu.stanford.nlp.trees.tregex.TregexPatternCompiler的典型用法代码示例。如果您正苦于以下问题:Java TregexPatternCompiler类的具体用法?Java TregexPatternCompiler怎么用?Java TregexPatternCompiler使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


TregexPatternCompiler类属于edu.stanford.nlp.trees.tregex包,在下文中一共展示了TregexPatternCompiler类的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: TransformationRuleGroups

import edu.stanford.nlp.trees.tregex.TregexPatternCompiler; //导入依赖的package包/类
public TransformationRuleGroups(String ruleFile)
    throws FileNotFoundException, IOException {
  patternCompiler = new TregexPatternCompiler();
  RuleGroups.Builder rulesBuilder = RuleGroups.newBuilder();
  TextFormat.merge(new FileReader(ruleFile), rulesBuilder);
  RuleGroups ruleGroups = rulesBuilder.build();

  ruleGroupList = new ArrayList<>();
  for (RuleGroup ruleGroup : ruleGroups.getRulegroupList()) {
    TransformationRuleGroup transformationRuleGroup =
        new TransformationRuleGroup(ruleGroup);
    ruleGroupList.add(transformationRuleGroup);
  }
  
  // Sort the groups based on the priority.
  ruleGroupList.sort(Comparator.comparing(r -> r.getPriority()));

  // Create relation priority map.
  relationPriority = new HashMap<>();
  relationList = new ArrayList<>(ruleGroups.getRelationList());
  relationList.sort(Comparator.comparing(r -> r.getPriority()));

  relationList.forEach(relation -> relationPriority.put(relation.getName(),
      relation.getPriority()));
}
 
开发者ID:sivareddyg,项目名称:UDepLambda,代码行数:26,代码来源:TransformationRuleGroups.java

示例2: TransformationRule

import edu.stanford.nlp.trees.tregex.TregexPatternCompiler; //导入依赖的package包/类
/**
 * Similar to {@link Rule} but with cache to store tregex patterns.
 * 
 * @param ruleGroup
 */
public TransformationRule(Rule rule) {

  if (rule.hasPriority())
    priority = rule.getPriority();

  if (rule.hasName())
    name = rule.getName();

  if (rule.hasTregex()) {
    tregex = TregexPatternCompiler.defaultCompiler.compile(rule.getTregex());
  }

  transformationList = new ArrayList<>(rule.getTransformationList());
}
 
开发者ID:sivareddyg,项目名称:UDepLambda,代码行数:20,代码来源:TransformationRule.java

示例3: getOperationFromReader

import edu.stanford.nlp.trees.tregex.TregexPatternCompiler; //导入依赖的package包/类
/**
 * Parses a tsurgeon script text input and compiles a tregex pattern and a list
 * of tsurgeon operations into a pair.
 *
 * @param reader Reader to read patterns from
 * @return A pair of a tregex and tsurgeon pattern read from a file, or <code>null</code>
 *    when the operations in the Reader have been exhausted
 * @throws IOException If any IO problem
 */
public static Pair<TregexPattern, TsurgeonPattern> getOperationFromReader(BufferedReader reader, TregexPatternCompiler compiler) throws IOException {
  String patternString = getTregexPatternFromReader(reader);
  // System.err.println("Read tregex pattern: " + patternString);
  if ("".equals(patternString)) {
    return null;
  }
  TregexPattern matchPattern = compiler.compile(patternString);

  TsurgeonPattern collectedPattern = getTsurgeonOperationsFromReader(reader);
  return new Pair<TregexPattern,TsurgeonPattern>(matchPattern,collectedPattern);
}
 
开发者ID:paulirwin,项目名称:Stanford.NER.Net,代码行数:21,代码来源:Tsurgeon.java

示例4: getOperationsFromFile

import edu.stanford.nlp.trees.tregex.TregexPatternCompiler; //导入依赖的package包/类
/**
 * Parses a tsurgeon script file and compiles all operations in the file into a list
 * of pairs of tregex and tsurgeon patterns.
 *
 * @param filename file containing the tsurgeon script
 * @return A pair of a tregex and tsurgeon pattern read from a file
 * @throws IOException If there is any I/O problem
 */
public static List<Pair<TregexPattern, TsurgeonPattern>> getOperationsFromFile(String filename, String encoding, TregexPatternCompiler compiler) throws IOException {
  List<Pair<TregexPattern,TsurgeonPattern>> operations = new ArrayList<Pair<TregexPattern, TsurgeonPattern>>();
  BufferedReader reader = new BufferedReader(new InputStreamReader(new FileInputStream(filename), encoding));
  for ( ; ; ) {
    Pair<TregexPattern, TsurgeonPattern> operation = getOperationFromReader(reader, compiler);
    if (operation == null) {
      break;
    }
    operations.add(operation);
  }
  reader.close();
  return operations;
}
 
开发者ID:paulirwin,项目名称:Stanford.NER.Net,代码行数:22,代码来源:Tsurgeon.java

示例5: GrammaticalRelation

import edu.stanford.nlp.trees.tregex.TregexPatternCompiler; //导入依赖的package包/类
public GrammaticalRelation(Language language,
                           String shortName,
                           String longName,
                           Class<? extends GrammaticalRelationAnnotation> annotation,
                           GrammaticalRelation parent,
                           String sourcePattern,
                           TregexPatternCompiler tregexCompiler,
                           String[] targetPatterns) {
  this(language, shortName, longName, annotation, parent, sourcePattern, tregexCompiler, targetPatterns, null);
}
 
开发者ID:paulirwin,项目名称:Stanford.NER.Net,代码行数:11,代码来源:GrammaticalRelation.java


注:本文中的edu.stanford.nlp.trees.tregex.TregexPatternCompiler类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。