<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet href="../../../design/description.xslt" type="text/xsl"?>
<node lang="en" type="DynamicNode.Lib.Text.NStringMatch" assembly="NLibDefault" xmlns="http://dynamicnodes.mastersign.de/description">
  <caption>Match</caption>
  <group>Text</group>
  <description>Matches a string or a regular expression to another string and passes on the matched string.</description>
  <inPorts>
    <port name="haystack">
      <type>System.String</type>
      <description>The string to be searched for a match.</description>
    </port>
    <port name="needle">
      <type>System.String</type>
      <description>The string or regular expression, respectively, to find.</description>
    </port>
    <port name="regex">
      <type>System.Boolean</type>
      <description>
        A value indicating if the needle string should be interpreted as a regular exression.
        If a value with <c>true</c> is present, the string to find is interpreted as a regular expression;
        otherwise the string to find is interpreted as string literal.
      </description>
    </port>
    <port name="startAt">
      <type>System.Int32</type>
      <description>An integer to specify the zero based index of the first regarded character in the haystack string.</description>
    </port>
  </inPorts>
  <outPorts>
    <port name="match">
      <type>System.String</type>
      <description>Emits the matched part in the haystack string.</description>
    </port>
  </outPorts>
  <helpText>
    <xhtml>
      This node searches a string (haystack) for a pattern (needle) in form of a literal or a regular expression.
      The first occurance of the needle string or the first regular matched part in the haystack string is passed on via the out port <code>match</code>.
    </xhtml>
  </helpText>
</node>