Split
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

In OCL, the String split function gets expects a char - but OCL defaults single characters to String. To solve this, do this:

SomeString.split('X'.toCharArray)

This OCL SomeString.split('X') will give you the error: 31:System.String does not conform to Collection(System.Char)

An example of creating a Collection(Part1:System.String+Part2:System.String) which is a tuple that you can iterate to - for example, do search and replace:

'A, B;
X, Y'.Split(';'.toCharArray)->collect(pair | pair.Split(','.toCharArray)->at(1), pair.Split(','.toCharArray)->at(2))
RGB := '241, 55, 45'; '#' + RGB.split(','.toCharArray)->
  collect(s|Integer.parse(s))->
    collect(i|i.toString('x'))->asSeparatedList('')

If you want to do the reverse, look at asSeparatedList.

This page was edited 73 days ago on 02/10/2024. What links here