Package edu.washington.cs.knowitall.sequence

Examples of edu.washington.cs.knowitall.sequence.LayeredTokenMatcher


  @Test
  public void testMatcher1() throws SequenceException {
    String patternStr = "There_w are_w CD_p [B-NP_n I-NP_n]+ (IN_p [B-NP_n I-NP_n]+)*";
    LayeredTokenPattern pat = new LayeredTokenPattern(patternStr);
    LayeredTokenMatcher m = pat.matcher(seq);
    assertTrue(m.find());
    assertEquals(0, m.start());
    assertEquals(6, m.end());
  }
View Full Code Here


 
  @Test
  public void testMatcher2() throws SequenceException {
    String patternStr = "B-NP_n I-NP_n*";
    LayeredTokenPattern pat = new LayeredTokenPattern(patternStr);
    LayeredTokenMatcher m = pat.matcher(seq);
    assertTrue(m.find());
    assertEquals(2, m.start());
    assertEquals(4, m.end());
    assertTrue(m.find());
    assertEquals(5, m.start());
    assertEquals(6, m.end());
    assertFalse(m.find());
  }
View Full Code Here

 
  @Test
  public void testMatcher3() throws SequenceException {
    String patternStr = "B-NP_n I-NP_n* ._p?$";
    LayeredTokenPattern pat = new LayeredTokenPattern(patternStr);
    LayeredTokenMatcher m = pat.matcher(seq);
    assertTrue(m.find());
    assertEquals(5, m.start());
    assertEquals(7, m.end());
    assertFalse(m.find());
  }
View Full Code Here

 
  @Test
  public void testMatcher4() throws SequenceException {
    String patternStr = "...";
    LayeredTokenPattern pat = new LayeredTokenPattern(patternStr);
    LayeredTokenMatcher m = pat.matcher(seq);
    assertTrue(m.find());
    assertEquals(0, m.start());
    assertEquals(3, m.end());
    assertTrue(m.find());
    assertEquals(3, m.start());
    assertEquals(6, m.end());
    assertFalse(m.find());
  }
View Full Code Here

        this(new LayeredTokenPattern(patternStr));
    }

    protected Collection<SpanExtraction> extractCandidates(ChunkedSentence sent)
            throws ExtractorException {
        LayeredTokenMatcher m = pattern.matcher(sent);
        List<SpanExtraction> results = new ArrayList<SpanExtraction>();
        while (m.find()) {
            int numFields = m.groupCount();
            List<Range> fieldRanges = new ArrayList<Range>();
            for (int i = 0; i < numFields; i++) {
                int start = m.start(i + 1);
                int end = m.end(i + 1);
                int len = end - start;
                if (start < 0 || end < 0)
                    break;
                fieldRanges.add(new Range(start, len));
            }
View Full Code Here

    public Collection<ChunkedExtraction> extractCandidates(
            ChunkedSentence sentence) throws ExtractorException {

        try {

            LayeredTokenMatcher m = pattern.matcher(sentence);
            Collection<ChunkedExtraction> results = new ArrayList<ChunkedExtraction>();

            while (m.find()) {
                int start = m.start();
                int length = m.end() - start;
                Range r = new Range(start, length);
                ChunkedExtraction extr = new ChunkedExtraction(sentence, r);
                results.add(extr);
            }
            return results;
View Full Code Here

                WORD, PREP);
        final LayeredTokenPattern pattern = new LayeredTokenPattern(patternStr);
        return new Predicate<ChunkedBinaryExtraction>() {
            public boolean apply(ChunkedBinaryExtraction e) {
                try {
                    LayeredTokenMatcher m = pattern.matcher(e.getRelation());
                    int n = 0;
                    while (m.find())
                        n++;
                    return n == 1;
                } catch (SequenceException ex) {
                    throw new IllegalStateException(ex);
                }
View Full Code Here

TOP

Related Classes of edu.washington.cs.knowitall.sequence.LayeredTokenMatcher

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.