Package weka.gui.beans

# Class SubstringLabelerRules.SubstringLabelerMatchRule

java.lang.Object
weka.gui.beans.SubstringLabelerRules.SubstringLabelerMatchRule

All Implemented Interfaces:
  `Serializable`

Enclosing class:
  SubstringLabelerRules

public static class SubstringLabelerRules.SubstringLabelerMatchRule extends Object implements Serializable
Inner class encapsulating the logic for matching

Author:
  Mark Hall (mhall{[at]}pentaho{[dot]}com)
See Also:
  - Serialized Form

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `static final String`
  `MATCH_PART_SEPARATOR`
  Separator for parts of the match specification

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `SubstringLabelerMatchRule()`
  Constructor
  `SubstringLabelerMatchRule(String setup)`
  Constructor
  `SubstringLabelerMatchRule(String match, boolean regex, boolean ignoreCase, String selectedAtts)`
  Constructor

- ## Method Summary

  Modifier and Type
  Method
  Description
  `String`
  `apply(Instance inst)`
  Apply this rule to the supplied instance
  `String`
  `getAttsToApplyTo()`
  Get the attributes to apply the rule to
  `boolean`
  `getIgnoreCase()`
  Get whether to ignore case when matching
  `String`
  `getLabel()`
  Get the label to assign if this rule matches, or empty string if binary flag attribute is being created.
  `String`
  `getMatch()`
  Get the string/regex to use for matching
  `boolean`
  `getRegex()`
  Get whether this is a regular expression match or not
  `void`
  `init(Environment env, Instances structure)`
  Initialize this match rule by substituting any environment variables in the attributes, match and label strings.
  `void`
  `setAttsToApplyTo(String a)`
  Set the attributes to apply the rule to
  `void`
  `setIgnoreCase(boolean ignore)`
  Set whether to ignore case when matching
  `void`
  `setLabel(String label)`
  Set the label to assign if this rule matches, or empty string if binary flag attribute is being created.
  `void`
  `setMatch(String match)`
  Set the string/regex to use for matching
  `void`
  `setRegex(boolean regex)`
  Set whether this is a regular expression match or not
  `String`
  `toString()`
  Return a textual description of this match rule
  `String`
  `toStringInternal()`
  Get the internal representation of this rule

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

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

- ## Field Details

  - ### MATCH_PART_SEPARATOR

    public static final String MATCH_PART_SEPARATOR
    Separator for parts of the match specification
    See Also:
      - Constant Field Values

- ## Constructor Details

  - ### SubstringLabelerMatchRule

    public SubstringLabelerMatchRule()
    Constructor

  - ### SubstringLabelerMatchRule

    public SubstringLabelerMatchRule(String setup)
    Constructor
    Parameters:
      `setup` - an internally encoded representation of all the match information for this rule

  - ### SubstringLabelerMatchRule

    public SubstringLabelerMatchRule(String match, boolean regex, boolean ignoreCase, String selectedAtts)
    Constructor
    Parameters:
      `match` - the match string
      `regex` - true if this is a regular expression match
      `ignoreCase` - true if case is to be ignored
      `selectedAtts` - the attributes to apply the rule to

- ## Method Details

  - ### setMatch

    public void setMatch(String match)
    Set the string/regex to use for matching
    Parameters:
      `match` - the match string

  - ### getMatch

    public String getMatch()
    Get the string/regex to use for matching
    Returns:
      the match string

  - ### setLabel

    public void setLabel(String label)
    Set the label to assign if this rule matches, or empty string if binary flag attribute is being created.
    Parameters:
      `label` - the label string or empty string

  - ### getLabel

    public String getLabel()
    Get the label to assign if this rule matches, or empty string if binary flag attribute is being created.
    Returns:
      the label string or empty string

  - ### setRegex

    public void setRegex(boolean regex)
    Set whether this is a regular expression match or not
    Parameters:
      `regex` - true if this is a regular expression match

  - ### getRegex

    public boolean getRegex()
    Get whether this is a regular expression match or not
    Returns:
      true if this is a regular expression match

  - ### setIgnoreCase

    public void setIgnoreCase(boolean ignore)
    Set whether to ignore case when matching
    Parameters:
      `ignore` - true if case is to be ignored

  - ### getIgnoreCase

    public boolean getIgnoreCase()
    Get whether to ignore case when matching
    Returns:
      true if case is to be ignored

  - ### setAttsToApplyTo

    public void setAttsToApplyTo(String a)
    Set the attributes to apply the rule to
    Parameters:
      `a` - the attributes to apply the rule to.

  - ### getAttsToApplyTo

    public String getAttsToApplyTo()
    Get the attributes to apply the rule to
    Returns:
      the attributes to apply the rule to.

  - ### init

    public void init(Environment env, Instances structure)
    Initialize this match rule by substituting any environment variables in the attributes, match and label strings. Sets up the attribute indices to apply to and validates that the selected attributes are all String attributes
    Parameters:
      `env` - the environment variables
      `structure` - the structure of the incoming instances

  - ### apply

    public String apply(Instance inst)
    Apply this rule to the supplied instance
    Parameters:
      `inst` - the instance to apply to
    Returns:
      the label (or empty string) if this rule matches (empty string is used to indicate a match in the case that a binary flag attribute is being created), or null if the rule doesn't match.

  - ### toString

    public String toString()
    Return a textual description of this match rule
    Overrides:
      `toString` in class `Object`
    Returns:
      a textual description of this match rule

  - ### toStringInternal

    public String toStringInternal()
    Get the internal representation of this rule
    Returns:
      a string formatted in the internal representation