Class SubstringLocalStep<S,​E>

  • All Implemented Interfaces:
    Serializable, Cloneable, Iterator<Traverser.Admin<E>>, Step<S,​E>

    public final class SubstringLocalStep<S,​E>
    extends StringLocalStep<S,​E>
    Reference implementation for substring step, a mid-traversal step which returns a substring of the incoming string traverser with a 0-based start index (inclusive) and optionally an end index (exclusive). If the start index is negative then it will begin at the specified index counted from the end of the string, or 0 if exceeding the string length. Likewise, if the end index is negative then it will end at the specified index counted from the end of the string, or 0 if exceeding the string length. End index is optional, if it is not specified or if it exceeds the length of the string then all remaining characters will be returned. End index <= start index will return the empty string. Null values are not processed and remain as null when returned. If the incoming traverser is a non-String value then an IllegalArgumentException will be thrown.
    Author:
    David Bechberger (http://bechberger.com), Yang Xia (http://github.com/xiazcy)
    See Also:
    Serialized Form