Class FilteredBreakIteratorBuilder

java.lang.Object
com.ibm.icu.text.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 Details

    • FilteredBreakIteratorBuilder

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

    • 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