Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Compete to become Power BI Data Viz World Champion! First round ends August 18th. Get started.

Reply
Alen1987
Frequent Visitor

Multiple column split in one step

Hi All
I am trying to split multiple columns in just one step. I did try several solutions but none did work for me.
I guess I need to use a list.
I have 3 columns, and all 3 should be splitting with different combinations of delimiters, but something like this
Left table is what I need to split to get the table on the right.

Alen1987_0-1720442183336.png

 

1 ACCEPTED SOLUTION
Ahmedx
Super User
Super User

pls try this code

let

f= (z)=>[
    a = Record.ToList(z),
    b = List.Transform(a, (x)=>  Splitter.SplitTextByAnyDelimiter({"(",")"})(x)),
    c = List.Combine( List.Transform(b,(x)=> List.RemoveMatchingItems(x,{"",null}))),
    e = Table.FromRows({c})
][e],
    Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WStQw0lTSUUrSMAZRyRomJppKsbEA", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [Column1 = _t, Column2 = _t, Column3 = _t]),
    #"Changed Type" = Table.TransformColumnTypes(Source,{{"Column1", type text}, {"Column2", type text}, {"Column3", type text}}),
    Custom1 = Table.Combine( Table.AddColumn(  #"Changed Type","Newtbl",f)[Newtbl])
in
    Custom1

View solution in original post

1 REPLY 1
Ahmedx
Super User
Super User

pls try this code

let

f= (z)=>[
    a = Record.ToList(z),
    b = List.Transform(a, (x)=>  Splitter.SplitTextByAnyDelimiter({"(",")"})(x)),
    c = List.Combine( List.Transform(b,(x)=> List.RemoveMatchingItems(x,{"",null}))),
    e = Table.FromRows({c})
][e],
    Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WStQw0lTSUUrSMAZRyRomJppKsbEA", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [Column1 = _t, Column2 = _t, Column3 = _t]),
    #"Changed Type" = Table.TransformColumnTypes(Source,{{"Column1", type text}, {"Column2", type text}, {"Column3", type text}}),
    Custom1 = Table.Combine( Table.AddColumn(  #"Changed Type","Newtbl",f)[Newtbl])
in
    Custom1

Helpful resources

Announcements
August Power BI Update Carousel

Power BI Monthly Update - August 2025

Check out the August 2025 Power BI update to learn about new features.

August 2025 community update carousel

Fabric Community Update - August 2025

Find out what's new and trending in the Fabric community.

Top Solution Authors