Top
Systemwalker Runbook Automation Studio User's Guide
Systemwalker

6.4.5 Format Filter

This filter splits strings in the results of an operation component or in filter output according to delimiters, and then embeds these strings into strings with a specified format.

Delimiter

Select the delimiter to split the input data (results of an operation component or in filter output) into values (columns).

  • Comma (Default)

  • Tab

  • Spaces

Enclose with

Select characters to enclose values:

  • Double quotes (Default)

  • Single quote

Information

  • If delimiters are surrounded by enclosing characters, these stipulate the ranges of values. This is demonstrated with the following example data:

    "aaaa,bbbb","cccc","dddd"

    The input is divided into the following three values (columns) if Double quotes have been specified as the enclosing characters.

    1: aaaa,bbbb

    2: cccc

    3: dddd

    The input is divided into the following four values (columns) if Single quotes have been specified as the enclosing characters.

    1: "aaaa

    2: bbbb"

    3: "cccc"

    4: "dddd"

  • Data that contains consecutive spaces is divided as follows if spaces have been specified as the delimiters:

    Before splitting: "aaaa"[[space][space]"bbbb"[space][space][space]"cccc"

    After splitting:

    1: "aaaa"

    2: Empty string

    3: "bbbb"

    4: Empty string

    5: Empty string

    6: "cccc"

Format string

Enter the format string where the divided text is to be embedded.

Specify the position for embedding using the format specifier ({n*1}).

If the number of pieces of text to embed exceeds the number of format specifiers ({n}), the extra text is ignored. If the number of format specifiers ({n}) exceeds the number of pieces of text to embed, the positions occupied by the extra specifiers are replaced with blanks. If there are multiple number format specifiers, then the same text is embedded wherever the same numbers appear.

The filter will end in an error if the Format string field is empty.

The input can be up to 512 characters long.

By using "[$number]", serial numbers (starting from 1) can be embedded according to the number of rows in the input data.

The format specifier is a value greater than 0.

Example 1:

Input:

serverA[linefeed]
serverB[linefeed]

Column separator:

Comma

Text separator:

Double quotes

Formatting string:

<Parameter ID="[$number]">
<TargetUDA Name="hostname" Value="{0}"/>
</Parameter>

Output:

<Parameter ID="1">
<TargetUDA Name="hostname" Value="serverA"/>
</Parameter>
<Parameter ID="2">
<TargetUDA Name="hostname" Value="serverB"/>
</Parameter>
Example 2:

Input:

"1" "server A"[linefeed]
"2" "server B"[linefeed]

Column separator:

Spaces

Text separator:

Double quotes

Formatting string:

<Parameter ID="{0}">
<TargetUDA Name="hostname" Value="{1}"/>
</Parameter>

Output:

<Parameter ID="1">
<TargetUDA Name="hostname" Value="server A"/>
</Parameter>
<Parameter ID="2">
<TargetUDA Name="hostname" Value="server B"/>
</Parameter>
Example 3:

Input:

1,serverA[linefeed]
2,serverB[linefeed]

Column separator:

Comma

Text separator:

Double quotes

Formatting string:

<Parameter ID="{0}" target="{1}">
<TargetUDA Name="hostname" Value="{1}"/>
</Parameter>

Output:

<Parameter ID="1" target="serverA">
<TargetUDA Name="hostname" Value="serverA"/>
</Parameter>
<Parameter ID="2" target="serverB">
<TargetUDA Name="hostname" Value="serverB"/>
</Parameter>