weka.gui.beans

## Class SubstringLabeler

- java.lang.Object
- - java.awt.Component
  - - java.awt.Container
    - - javax.swing.JComponent
      - - javax.swing.JPanel
        - - weka.gui.beans.SubstringLabeler

- All Implemented Interfaces:
    java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, java.util.EventListener, javax.accessibility.Accessible, EnvironmentHandler, BeanCommon, DataSource, DataSourceListener, EventConstraints, InstanceListener, TestSetListener, TrainingSetListener, Visible

      @KFStep(category="Tools",
              toolTipText="Label instances according to substring matches in String attributes")
      public class SubstringLabeler
      extends javax.swing.JPanel
      implements BeanCommon, Visible, java.io.Serializable, InstanceListener, TrainingSetListener, TestSetListener, DataSourceListener, EventConstraints, EnvironmentHandler, DataSource

  A bean that finds matches in string attribute values (using either substring or regular expression matches) and labels the instance (sets the value of a new attribute) according to the supplied label for the matching rule. The new label attribute can be either multivalued nominal (if each match rule specified has an explicit label associated with it) or, binary numeric/nominal to indicate that one of the match rules has matched or not matched.
  Version:
    $Revision: 11956 $
  Author:
    Mark Hall (mhall{[at]}pentaho{[dot]}com)
  See Also:
    Serialized Form

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from class javax.swing.JComponent

      `javax.swing.JComponent.AccessibleJComponent`

    - ### Nested classes/interfaces inherited from class java.awt.Component

      `java.awt.Component.BaselineResizeBehavior`

  - ### Field Summary

    - ### Fields inherited from class javax.swing.JComponent

      `TOOL_TIP_TEXT_KEY, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW`

    - ### Fields inherited from class java.awt.Component

      `BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT`

    - ### Fields inherited from interface java.awt.image.ImageObserver

      `ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `SubstringLabeler()` Constructor

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `acceptDataSet(DataSetEvent e)` Accept and process a data set event
    `void` | `acceptInstance(InstanceEvent e)` Accept and process an instance event
    `void` | `acceptTestSet(TestSetEvent e)` Accept and process a test set event
    `void` | `acceptTrainingSet(TrainingSetEvent e)` Accept and process a training set event
    `void` | `addDataSourceListener(DataSourceListener dsl)` Add a datasource listener
    `void` | `addInstanceListener(InstanceListener dsl)` Add an instance listener
    `boolean` | `connectionAllowed(java.beans.EventSetDescriptor esd)` Returns true if, at this time, the object will accept a connection via the named event
    `boolean` | `connectionAllowed(java.lang.String eventName)` Returns true if, at this time, the object will accept a connection via the named event
    `void` | `connectionNotification(java.lang.String eventName, java.lang.Object source)` Notify this object that it has been registered as a listener with a source for receiving events described by the named event This object is responsible for recording this fact.
    `void` | `disconnectionNotification(java.lang.String eventName, java.lang.Object source)` Notify this object that it has been deregistered as a listener with a source for named event.
    `boolean` | `eventGeneratable(java.lang.String eventName)` Returns true if, at the current time, the named event could be generated.
    `boolean` | `getConsumeNonMatching()` Get whether instances that do not match any of the rules should be "consumed" rather than output with a missing value set for the new attribute.
    `java.lang.String` | `getCustomName()` Get the custom (descriptive) name for this bean (if one has been set)
    `java.lang.String` | `getMatchAttributeName()`
    `java.lang.String` | `getMatchDetails()` Get the internally encoded list of match rules
    `boolean` | `getNominalBinary()` Get whether the new attribute created should be a nominal binary attribute rather than a numeric binary attribute.
    `BeanVisual` | `getVisual()` Get the visual representation
    `java.lang.String` | `globalInfo()` Help information suitable for displaying in the GUI.
    `boolean` | `isBusy()` Returns true if.
    `void` | `removeDataSourceListener(DataSourceListener dsl)` Remove a datasource listener
    `void` | `removeInstanceListener(InstanceListener dsl)` Remove an instance listener
    `void` | `setConsumeNonMatching(boolean consume)` Set whether instances that do not match any of the rules should be "consumed" rather than output with a missing value set for the new attribute.
    `void` | `setCustomName(java.lang.String name)` Set a custom (descriptive) name for this bean
    `void` | `setEnvironment(Environment env)` Set environment variables to use
    `void` | `setLog(Logger logger)` Set a logger
    `void` | `setMatchAttributeName(java.lang.String name)`
    `void` | `setMatchDetails(java.lang.String details)` Set internally encoded list of match rules
    `void` | `setNominalBinary(boolean nom)` Set whether the new attribute created should be a nominal binary attribute rather than a numeric binary attribute.
    `void` | `setVisual(BeanVisual newVisual)` Set a new visual representation
    `void` | `stop()` Stop any processing that the bean might be doing.
    `void` | `useDefaultVisual()` Use the default visual representation

    - ### Methods inherited from class javax.swing.JPanel

      `getAccessibleContext, getUI, getUIClassID, setUI, updateUI`

    - ### Methods inherited from class javax.swing.JComponent

      `addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBaseline, getBaselineResizeBehavior, getBorder, getBounds, getClientProperty, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getFontMetrics, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPopupLocation, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, hide, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintImmediately, paintImmediately, print, printAll, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update`

    - ### Methods inherited from class java.awt.Container

      `add, add, add, add, add, addContainerListener, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusDownCycle, validate`

    - ### Methods inherited from class java.awt.Component

      `action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, contains, createImage, createImage, createVolatileImage, createVolatileImage, dispatchEvent, enable, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle`

    - ### Methods inherited from class java.lang.Object

      `equals, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- - ### Constructor Detail

    - #### SubstringLabeler

          public SubstringLabeler()

      Constructor

  - ### Method Detail

    - #### globalInfo

          public java.lang.String globalInfo()

      Help information suitable for displaying in the GUI.
      Returns:
        a description of this component

    - #### setMatchDetails

          public void setMatchDetails(java.lang.String details)

      Set internally encoded list of match rules
      Parameters:
        `details` - the list of match rules

    - #### getMatchDetails

          public java.lang.String getMatchDetails()

      Get the internally encoded list of match rules
      Returns:
        the match rules

    - #### setNominalBinary

          public void setNominalBinary(boolean nom)

      Set whether the new attribute created should be a nominal binary attribute rather than a numeric binary attribute.
      Parameters:
        `nom` - true if the attribute should be a nominal binary one

    - #### getNominalBinary

          public boolean getNominalBinary()

      Get whether the new attribute created should be a nominal binary attribute rather than a numeric binary attribute.
      Returns:
        true if the attribute should be a nominal binary one

    - #### setConsumeNonMatching

          public void setConsumeNonMatching(boolean consume)

      Set whether instances that do not match any of the rules should be "consumed" rather than output with a missing value set for the new attribute.
      Parameters:
        `consume` - true if non matching instances should be consumed by the component.

    - #### getConsumeNonMatching

          public boolean getConsumeNonMatching()

      Get whether instances that do not match any of the rules should be "consumed" rather than output with a missing value set for the new attribute.
      Returns:
        true if non matching instances should be consumed by the component.

    - #### setMatchAttributeName

          public void setMatchAttributeName(java.lang.String name)

    - #### getMatchAttributeName

          public java.lang.String getMatchAttributeName()

    - #### addDataSourceListener

          public void addDataSourceListener(DataSourceListener dsl)

      Add a datasource listener
      Specified by:
        `addDataSourceListener` in interface `DataSource`
      Parameters:
        `dsl` - the datasource listener to add

    - #### removeDataSourceListener

          public void removeDataSourceListener(DataSourceListener dsl)

      Remove a datasource listener
      Specified by:
        `removeDataSourceListener` in interface `DataSource`
      Parameters:
        `dsl` - the datasource listener to remove

    - #### addInstanceListener

          public void addInstanceListener(InstanceListener dsl)

      Add an instance listener
      Specified by:
        `addInstanceListener` in interface `DataSource`
      Parameters:
        `dsl` - the instance listener to add

    - #### removeInstanceListener

          public void removeInstanceListener(InstanceListener dsl)

      Remove an instance listener
      Specified by:
        `removeInstanceListener` in interface `DataSource`
      Parameters:
        `dsl` - the instance listener to remove

    - #### setEnvironment

          public void setEnvironment(Environment env)

      Set environment variables to use
      Specified by:
        `setEnvironment` in interface `EnvironmentHandler`
      Parameters:
        `env` - the environment variables to use

    - #### eventGeneratable

          public boolean eventGeneratable(java.lang.String eventName)

      Returns true if, at the current time, the named event could be generated.
      Specified by:
        `eventGeneratable` in interface `EventConstraints`
      Parameters:
        `eventName` - the name of the event in question
      Returns:
        true if the named event could be generated

    - #### useDefaultVisual

          public void useDefaultVisual()

      Use the default visual representation
      Specified by:
        `useDefaultVisual` in interface `Visible`

    - #### setVisual

          public void setVisual(BeanVisual newVisual)

      Set a new visual representation
      Specified by:
        `setVisual` in interface `Visible`
      Parameters:
        `newVisual` - a `BeanVisual` value

    - #### getVisual

          public BeanVisual getVisual()

      Get the visual representation
      Specified by:
        `getVisual` in interface `Visible`
      Returns:
        a `BeanVisual` value

    - #### setCustomName

          public void setCustomName(java.lang.String name)

      Set a custom (descriptive) name for this bean
      Specified by:
        `setCustomName` in interface `BeanCommon`
      Parameters:
        `name` - the name to use

    - #### getCustomName

          public java.lang.String getCustomName()

      Get the custom (descriptive) name for this bean (if one has been set)
      Specified by:
        `getCustomName` in interface `BeanCommon`
      Returns:
        the custom name (or the default name)

    - #### stop

          public void stop()

      Stop any processing that the bean might be doing.
      Specified by:
        `stop` in interface `BeanCommon`

    - #### isBusy

          public boolean isBusy()

      Returns true if. at this time, the bean is busy with some (i.e. perhaps a worker thread is performing some calculation).
      Specified by:
        `isBusy` in interface `BeanCommon`
      Returns:
        true if the bean is busy.

    - #### setLog

          public void setLog(Logger logger)

      Set a logger
      Specified by:
        `setLog` in interface `BeanCommon`
      Parameters:
        `logger` - a `weka.gui.Logger` value

    - #### connectionAllowed

          public boolean connectionAllowed(java.beans.EventSetDescriptor esd)

      Returns true if, at this time, the object will accept a connection via the named event
      Specified by:
        `connectionAllowed` in interface `BeanCommon`
      Parameters:
        `esd` - the EventSetDescriptor for the event in question
      Returns:
        true if the object will accept a connection

    - #### connectionAllowed

          public boolean connectionAllowed(java.lang.String eventName)

      Returns true if, at this time, the object will accept a connection via the named event
      Specified by:
        `connectionAllowed` in interface `BeanCommon`
      Parameters:
        `eventName` - the name of the event
      Returns:
        true if the object will accept a connection

    - #### connectionNotification

          public void connectionNotification(java.lang.String eventName,
                                             java.lang.Object source)

      Notify this object that it has been registered as a listener with a source for receiving events described by the named event This object is responsible for recording this fact.
      Specified by:
        `connectionNotification` in interface `BeanCommon`
      Parameters:
        `eventName` - the event
        `source` - the source with which this object has been registered as a listener

    - #### disconnectionNotification

          public void disconnectionNotification(java.lang.String eventName,
                                                java.lang.Object source)

      Notify this object that it has been deregistered as a listener with a source for named event. This object is responsible for recording this fact.
      Specified by:
        `disconnectionNotification` in interface `BeanCommon`
      Parameters:
        `eventName` - the event
        `source` - the source with which this object has been registered as a listener

    - #### acceptInstance

          public void acceptInstance(InstanceEvent e)

      Accept and process an instance event
      Specified by:
        `acceptInstance` in interface `InstanceListener`
      Parameters:
        `e` - the instance event to process

    - #### acceptDataSet

          public void acceptDataSet(DataSetEvent e)

      Accept and process a data set event
      Specified by:
        `acceptDataSet` in interface `DataSourceListener`
      Parameters:
        `e` - the data set event to process

    - #### acceptTestSet

          public void acceptTestSet(TestSetEvent e)

      Accept and process a test set event
      Specified by:
        `acceptTestSet` in interface `TestSetListener`
      Parameters:
        `e` - the test set event to process

    - #### acceptTrainingSet

          public void acceptTrainingSet(TrainingSetEvent e)

      Accept and process a training set event
      Specified by:
        `acceptTrainingSet` in interface `TrainingSetListener`
      Parameters:
        `e` - a `TrainingSetEvent` value