Splits attribute values into parts, based on a delimiter or fixed-width pattern, and creates a list attribute containing one list element for each part.

Jump to Configuration

Typical Uses

  • Converting a delimited list of values into an FME list attribute
  • Extracting one part of an attribute value based on column-aligned text with a known structure

How does it work?

Once connected to an input feature stream, the AttributeSplitter lets you select an Attribute to Split. The value for that attribute is divided into parts based on parameter selections, and the results added to a new list attribute.

Splitting can be done with either a delimiter (such a comma-separated list of values), or by providing a format string that identifies the width of each part in a piece of column-aligned text.

In the case of a delimited list, the number of parts in the value can be variable. A field qualifying character may also be specified for cases where the delimiter appears within the string as a non-delimiting value (such as commas within addresses in comma-separated strings).

For fixed-width splitting, parts will be extracted exactly according to the format string provided.

Whitespace may be trimmed from the resulting values, and Empty Parts - parts with no resulting value - may be kept or dropped.

The new list attributes can be used with other list-based transformers. Alternatively, you can expose specific list elements to be used as individual attributes (see example below).


Usage Notes

  • Lists are usually indicated in FME Workbench by name, followed by a pair of curly brackets - mylist{}.
    A specific list element contains its number between the brackets - mylist{0}
  • To access specific list elements in FME Workbench, right-click on a list name in the attribute list and choose Expose Elements.
  • For information on working with lists, see List Attributes.
  • To split attributes using regular expression pattern matching, consider using the StringSearcher.


Input Ports

Output Ports


Editing Transformer Parameters

Using a set of menu options, transformer parameters can be assigned by referencing other elements in the workspace. More advanced functions, such as an advanced editor and an arithmetic editor, are also available in some transformers. To access a menu of these options, click beside the applicable parameter. For more information, see Transformer Parameter Menu Options.

Defining Values

There are several ways to define a value for use in a Transformer. The simplest is to simply type in a value or string, which can include functions of various types such as attribute references, math and string functions, and workspace parameters. There are a number of tools and shortcuts that can assist in constructing values, generally available from the drop-down context menu adjacent to the value field.

Dialog Options - Tables

Transformers with table-style parameters have additional tools for populating and manipulating values.


Processing Behavior


Feature Holding


Dependencies None

FME Community

The FME Community is the place for demos, how-tos, articles, FAQs, and more. Get answers to your questions, learn from other users, and suggest, vote, and comment on new features.

Search for all results about the AttributeSplitter on the FME Community.


Examples may contain information licensed under the Open Government Licence – Vancouver and/or the Open Government Licence – Canada.