Class FilteredBreakIteratorBuilder


  • public abstract class FilteredBreakIteratorBuilder
    extends Object
    The BreakIteratorFilter is used to modify the behavior of a BreakIterator by constructing a new BreakIterator which suppresses certain segment boundaries. See http://www.unicode.org/reports/tr35/tr35-general.html#Segmentation_Exceptions . For example, a typical English Sentence Break Iterator would break on the space in the string "Mr. Smith" (resulting in two segments), but with "Mr." as an exception, a filtered break iterator would consider the string "Mr. Smith" to be a single segment.

    This class is not intended for public subclassing.

    • Constructor Detail

      • FilteredBreakIteratorBuilder

        @Deprecated
        protected FilteredBreakIteratorBuilder()
        Deprecated.
        internal to ICU
        For subclass use
    • Method Detail

      • getInstance

        public static final FilteredBreakIteratorBuilder getInstance​(Locale where)
        Construct a FilteredBreakIteratorBuilder based on sentence break exception rules in a locale. The rules are taken from CLDR exception data for the locale, see http://www.unicode.org/reports/tr35/tr35-general.html#Segmentation_Exceptions This is the equivalent of calling createInstance(UErrorCode&) and then repeatedly calling addNoBreakAfter(...) with the contents of the CLDR exception data.
        Parameters:
        where - the locale.
        Returns:
        the new builder
      • getInstance

        public static final FilteredBreakIteratorBuilder getInstance​(ULocale where)
        Construct a FilteredBreakIteratorBuilder based on sentence break exception rules in a locale. The rules are taken from CLDR exception data for the locale, see http://www.unicode.org/reports/tr35/tr35-general.html#Segmentation_Exceptions This is the equivalent of calling createInstance(UErrorCode&) and then repeatedly calling addNoBreakAfter(...) with the contents of the CLDR exception data.
        Parameters:
        where - the locale.
        Returns:
        the new builder
      • getEmptyInstance

        public static final FilteredBreakIteratorBuilder getEmptyInstance()
        Construct an empty FilteredBreakIteratorBuilder. In this state, it will not suppress any segment boundaries.
        Returns:
        the new builder
      • suppressBreakAfter

        public abstract boolean suppressBreakAfter​(CharSequence str)
        Suppress a certain string from being the end of a segment. For example, suppressing "Mr.", then segments ending in "Mr." will not be returned by the iterator.
        Parameters:
        str - the string to suppress, such as "Mr."
        Returns:
        true if the string was not present and now added, false if the call was a no-op because the string was already being suppressed.
      • unsuppressBreakAfter

        public abstract boolean unsuppressBreakAfter​(CharSequence str)
        Stop suppressing a certain string from being the end of the segment. This function does not create any new segment boundaries, but only serves to un-do the effect of earlier calls to suppressBreakAfter, or to un-do the effect of locale data which may be suppressing certain strings.
        Parameters:
        str - the str the string to unsuppress, such as "Mr."
        Returns:
        true if the string was present and now removed, false if the call was a no-op because the string was not being suppressed.
      • wrapIteratorWithFilter

        public abstract BreakIterator wrapIteratorWithFilter​(BreakIterator wrappedBreakIterator)
        Wrap (adopt) an existing break iterator in a new filtered instance. Note that the wrappedBreakIterator is adopted by the new BreakIterator and should no longer be used by the caller. The FilteredBreakIteratorBuilder may be reused.
        Parameters:
        wrappedBreakIterator - the break iterator to wrap
        Returns:
        the new BreakIterator