Class UnicodeSetSpanner

    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      int countIn​(java.lang.CharSequence sequence)
      Returns the number of matching characters found in a character sequence, counting by CountMethod.MIN_ELEMENTS using SpanCondition.SIMPLE.
      int countIn​(java.lang.CharSequence sequence, UnicodeSetSpanner.CountMethod countMethod)
      Returns the number of matching characters found in a character sequence, using SpanCondition.SIMPLE.
      int countIn​(java.lang.CharSequence sequence, UnicodeSetSpanner.CountMethod countMethod, UnicodeSet.SpanCondition spanCondition)
      Returns the number of matching characters found in a character sequence.
      java.lang.String deleteFrom​(java.lang.CharSequence sequence)
      Delete all the matching spans in sequence, using SpanCondition.SIMPLE The code alternates spans; see the class doc for UnicodeSetSpanner for a note about boundary conditions.
      java.lang.String deleteFrom​(java.lang.CharSequence sequence, UnicodeSet.SpanCondition spanCondition)
      Delete all matching spans in sequence, according to the spanCondition.
      boolean equals​(java.lang.Object other)
      UnicodeSet getUnicodeSet()
      Returns the UnicodeSet used for processing.
      int hashCode()
      java.lang.String replaceFrom​(java.lang.CharSequence sequence, java.lang.CharSequence replacement)
      Replace all matching spans in sequence by the replacement, counting by CountMethod.MIN_ELEMENTS using SpanCondition.SIMPLE.
      java.lang.String replaceFrom​(java.lang.CharSequence sequence, java.lang.CharSequence replacement, UnicodeSetSpanner.CountMethod countMethod)
      Replace all matching spans in sequence by replacement, according to the CountMethod, using SpanCondition.SIMPLE.
      java.lang.String replaceFrom​(java.lang.CharSequence sequence, java.lang.CharSequence replacement, UnicodeSetSpanner.CountMethod countMethod, UnicodeSet.SpanCondition spanCondition)
      Replace all matching spans in sequence by replacement, according to the countMethod and spanCondition.
      java.lang.CharSequence trim​(java.lang.CharSequence sequence)
      Returns a trimmed sequence (using CharSequence.subsequence()), that omits matching elements at the start and end of the string, using TrimOption.BOTH and SpanCondition.SIMPLE.
      java.lang.CharSequence trim​(java.lang.CharSequence sequence, UnicodeSetSpanner.TrimOption trimOption)
      Returns a trimmed sequence (using CharSequence.subsequence()), that omits matching elements at the start or end of the string, using the trimOption and SpanCondition.SIMPLE.
      java.lang.CharSequence trim​(java.lang.CharSequence sequence, UnicodeSetSpanner.TrimOption trimOption, UnicodeSet.SpanCondition spanCondition)
      Returns a trimmed sequence (using CharSequence.subsequence()), that omits matching elements at the start or end of the string, depending on the trimOption and spanCondition.
      • Methods inherited from class java.lang.Object

        clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

    • Constructor Detail

      • UnicodeSetSpanner

        public UnicodeSetSpanner​(UnicodeSet source)
        Create a spanner from a UnicodeSet. For speed and safety, the UnicodeSet should be frozen. However, this class can be used with a non-frozen version to avoid the cost of freezing.
        Parameters:
        source - the original UnicodeSet
    • Method Detail

      • getUnicodeSet

        public UnicodeSet getUnicodeSet()
        Returns the UnicodeSet used for processing. It is frozen iff the original was.
        Returns:
        the construction set.
      • equals

        public boolean equals​(java.lang.Object other)
        Overrides:
        equals in class java.lang.Object
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class java.lang.Object
      • countIn

        public int countIn​(java.lang.CharSequence sequence)
        Returns the number of matching characters found in a character sequence, counting by CountMethod.MIN_ELEMENTS using SpanCondition.SIMPLE. The code alternates spans; see the class doc for UnicodeSetSpanner for a note about boundary conditions.
        Parameters:
        sequence - the sequence to count characters in
        Returns:
        the count. Zero if there are none.
      • countIn

        public int countIn​(java.lang.CharSequence sequence,
                           UnicodeSetSpanner.CountMethod countMethod)
        Returns the number of matching characters found in a character sequence, using SpanCondition.SIMPLE. The code alternates spans; see the class doc for UnicodeSetSpanner for a note about boundary conditions.
        Parameters:
        sequence - the sequence to count characters in
        countMethod - whether to treat an entire span as a match, or individual elements as matches
        Returns:
        the count. Zero if there are none.
      • countIn

        public int countIn​(java.lang.CharSequence sequence,
                           UnicodeSetSpanner.CountMethod countMethod,
                           UnicodeSet.SpanCondition spanCondition)
        Returns the number of matching characters found in a character sequence. The code alternates spans; see the class doc for UnicodeSetSpanner for a note about boundary conditions.
        Parameters:
        sequence - the sequence to count characters in
        countMethod - whether to treat an entire span as a match, or individual elements as matches
        spanCondition - the spanCondition to use. SIMPLE or CONTAINED means only count the elements in the span; NOT_CONTAINED is the reverse.
        WARNING: when a UnicodeSet contains strings, there may be unexpected behavior in edge cases.
        Returns:
        the count. Zero if there are none.
      • deleteFrom

        public java.lang.String deleteFrom​(java.lang.CharSequence sequence)
        Delete all the matching spans in sequence, using SpanCondition.SIMPLE The code alternates spans; see the class doc for UnicodeSetSpanner for a note about boundary conditions.
        Parameters:
        sequence - charsequence to replace matching spans in.
        Returns:
        modified string.
      • deleteFrom

        public java.lang.String deleteFrom​(java.lang.CharSequence sequence,
                                           UnicodeSet.SpanCondition spanCondition)
        Delete all matching spans in sequence, according to the spanCondition. The code alternates spans; see the class doc for UnicodeSetSpanner for a note about boundary conditions.
        Parameters:
        sequence - charsequence to replace matching spans in.
        spanCondition - specify whether to modify the matching spans (CONTAINED or SIMPLE) or the non-matching (NOT_CONTAINED)
        Returns:
        modified string.
      • replaceFrom

        public java.lang.String replaceFrom​(java.lang.CharSequence sequence,
                                            java.lang.CharSequence replacement)
        Replace all matching spans in sequence by the replacement, counting by CountMethod.MIN_ELEMENTS using SpanCondition.SIMPLE. The code alternates spans; see the class doc for UnicodeSetSpanner for a note about boundary conditions.
        Parameters:
        sequence - charsequence to replace matching spans in.
        replacement - replacement sequence. To delete, use ""
        Returns:
        modified string.
      • replaceFrom

        public java.lang.String replaceFrom​(java.lang.CharSequence sequence,
                                            java.lang.CharSequence replacement,
                                            UnicodeSetSpanner.CountMethod countMethod)
        Replace all matching spans in sequence by replacement, according to the CountMethod, using SpanCondition.SIMPLE. The code alternates spans; see the class doc for UnicodeSetSpanner for a note about boundary conditions.
        Parameters:
        sequence - charsequence to replace matching spans in.
        replacement - replacement sequence. To delete, use ""
        countMethod - whether to treat an entire span as a match, or individual elements as matches
        Returns:
        modified string.
      • replaceFrom

        public java.lang.String replaceFrom​(java.lang.CharSequence sequence,
                                            java.lang.CharSequence replacement,
                                            UnicodeSetSpanner.CountMethod countMethod,
                                            UnicodeSet.SpanCondition spanCondition)
        Replace all matching spans in sequence by replacement, according to the countMethod and spanCondition. The code alternates spans; see the class doc for UnicodeSetSpanner for a note about boundary conditions.
        Parameters:
        sequence - charsequence to replace matching spans in.
        replacement - replacement sequence. To delete, use ""
        countMethod - whether to treat an entire span as a match, or individual elements as matches
        spanCondition - specify whether to modify the matching spans (CONTAINED or SIMPLE) or the non-matching (NOT_CONTAINED)
        Returns:
        modified string.
      • trim

        public java.lang.CharSequence trim​(java.lang.CharSequence sequence)
        Returns a trimmed sequence (using CharSequence.subsequence()), that omits matching elements at the start and end of the string, using TrimOption.BOTH and SpanCondition.SIMPLE. For example:
         
         
           new UnicodeSet("[ab]").trim("abacatbab")
         
        ... returns "cat".
        Parameters:
        sequence - the sequence to trim
        Returns:
        a subsequence
      • trim

        public java.lang.CharSequence trim​(java.lang.CharSequence sequence,
                                           UnicodeSetSpanner.TrimOption trimOption)
        Returns a trimmed sequence (using CharSequence.subsequence()), that omits matching elements at the start or end of the string, using the trimOption and SpanCondition.SIMPLE. For example:
         
         
           new UnicodeSet("[ab]").trim("abacatbab", TrimOption.LEADING)
         
        ... returns "catbab".
        Parameters:
        sequence - the sequence to trim
        trimOption - LEADING, TRAILING, or BOTH
        Returns:
        a subsequence
      • trim

        public java.lang.CharSequence trim​(java.lang.CharSequence sequence,
                                           UnicodeSetSpanner.TrimOption trimOption,
                                           UnicodeSet.SpanCondition spanCondition)
        Returns a trimmed sequence (using CharSequence.subsequence()), that omits matching elements at the start or end of the string, depending on the trimOption and spanCondition. For example:
         
         
           new UnicodeSet("[ab]").trim("abacatbab", TrimOption.LEADING, SpanCondition.SIMPLE)
         
        ... returns "catbab".
        Parameters:
        sequence - the sequence to trim
        trimOption - LEADING, TRAILING, or BOTH
        spanCondition - SIMPLE, CONTAINED or NOT_CONTAINED
        Returns:
        a subsequence