/** * returns true if this Span is in the range of the Span s. */ public boolean hits( Span s ){ return start < s.getEnd() && s.getStart() < end; }
private static void handleSpans( List<Span> spans, String text, StringBuilder sb ){ for( Span s: spans ) sb.append( text.substring( s.getStart(), s.getEnd() )+" "); }
public boolean equals(Span s){ return ((this.start == s.getStart() )&&( this.end == s.getEnd() )); }
/** * Sorts the Links... */ private static List<Link> sortLinks(List<Link> links) { List<Link> result = new ArrayList<Link>(); for (Link l : links) { int pos = 0; while (pos < result.size() && l.getPos().getStart() > result.get(pos).getPos() .getStart()) { pos++; } result.add(pos, l); } return result; }
/** * Sorts the Templates... */ private static List<Template> sortTemplates(List<Template> templates) { List<Template> result = new ArrayList<Template>(); for (Template t : templates) { int pos = 0; while (pos < result.size() && t.getPos().getStart() > result.get(pos).getPos() .getStart()) { pos++; } result.add(pos, t); } return result; }
/** * Replaces the content between s.getStart() (included) and s.getEnd() (excluded) with * a String */ public SpanManager replace(Span s, String str){ return replace( s.getStart(), s.getEnd(), str); }
/** * Deletes the content between s.getStart() (included) and s.getEnd() (excluded). */ public SpanManager delete(Span s){ return delete(s.getStart(), s.getEnd() ); }
public int indexOf(String str, Span s){ return indexOf(str, s.getStart(), s.getEnd() ); }
sm.delete(s); l.setHomeElement(result); s.adjust(-s.getStart() + text.length()); text.append(linkText + linkSpacer); localLinks.add(l);
private Span removeHr(SpanManager sm, Span s) { int start = s.getStart(); final int end = s.getEnd(); while (sm.charAt(start) == '-' && start < end) { start++; } return s.setStart(start).trim(sm); }
private String getTagText(SpanManager sm, Span tag) { return sm.substring(new Span(tag.getStart() + 1, tag.getEnd() - 1) .trim(sm)); }
s.getStart() + 1, s.getEnd()))); .getEnd()))); content.add(0, parseContentElement(sm, cepp, new Span( s.getStart() + 1, temp))); if (sm.charAt(ns.getStart()) != ':') ns.getStart() + 1, ns.getEnd()))); result.setSrcSpan(new SrcSpan(sm.getSrcPos(s.getStart()), content .get(content.size() - 1).getSrcSpan().getEnd()));
s.trim(sm.setCharAt(s.getStart(), ' ')); break;
private void setCategories(Article article, ParsedPage page) { final ArrayList<Link> categories = new ArrayList<Link>(10); for (final de.tudarmstadt.ukp.wikipedia.parser.Link c : page.getCategories()) { categories.add(new Link(c.getTarget(), c.getText(), c.getPos().getStart(), c.getPos().getEnd(), Link.Type.CATEGORY)); } article.setCategories(categories); }
public ParsedPageLink(Link link) { if (link.getTarget() != null) { page = normalizePageName(link.getTarget().trim()); } else { page = StringTable.EMPTY_STRING; } if (link.getText() != null) { form = removeSuffix(removeQuotes(link.getText().trim())); } String context = link.getHomeElement().getText(); if (context != null) { Span span = link.getPos(); leftContext = context.substring(0, span.getStart()); rightContext = context.substring(span.getEnd(), context.length()); } }
/** * Returns the number of Equality Chars which are used to specify the level * of the Section. */ private int getSectionLevel(SpanManager sm, Span sectionNameSpan) { int begin = sectionNameSpan.getStart(); int end = sectionNameSpan.getEnd(); int level = 0; try { while ((sm.charAt(begin + level) == '=') && (sm.charAt(end - 1 - level) == '=')) { level++; } } catch (StringIndexOutOfBoundsException e) { // there is no need to do anything! logger.debug("EXCEPTION IS OK: {}", e.getLocalizedMessage()); } if (begin + level == end) { level = (level - 1) / 2; } return level; }
private Link addLink(final List<Link> links, final List<Link> externalLinks, final de.tudarmstadt.ukp.wikipedia.parser.Link link, final Link.Type jsonWikipediaType){ if (link.getTarget().isEmpty()){ return null; } final Link jsonWikipediaLink; if (link.getType() == de.tudarmstadt.ukp.wikipedia.parser.Link.type.INTERNAL){ jsonWikipediaLink = new Link(link.getTarget(), link.getText(), link.getPos().getStart(), link.getPos().getEnd(), jsonWikipediaType); links.add(jsonWikipediaLink); } else if (link.getType() == de.tudarmstadt.ukp.wikipedia.parser.Link.type.EXTERNAL){ jsonWikipediaLink = new Link(link.getTarget(), link.getText(), link.getPos().getStart(), link.getPos().getEnd(), jsonWikipediaType); externalLinks.add(new Link(link.getTarget(), link.getText(), link.getPos().getStart(), link.getPos().getEnd(), jsonWikipediaType)); } else if (link.getType() == de.tudarmstadt.ukp.wikipedia.parser.Link.type.IMAGE){ jsonWikipediaLink = new Link(link.getTarget(), link.getText(), link.getPos().getStart(), link.getPos().getEnd(), Link.Type.IMAGE); links.add(jsonWikipediaLink); } else { jsonWikipediaLink = null; } return jsonWikipediaLink; }