Forum Discussion

Anonymous's avatar
Anonymous
Not applicable
4 years ago
Solved

How to split by delimiter '-' in contiguous manner?

I have table :

 

CategoryJanuaryFebruaryMarchAprilMayJuneJulyAugustSeptemberOctoberNovemberDecember
A-B28875701782363300000000
C-D00117226416314304341836054123000
E,F,G00000035583008261326174813188
H-K00000000602120410112699
L00000000000380

 

While splitting column 'Category' by delimiter '-' I want that H-K should be split into H,I,J,K into different rows. How shall I do that?

  • Anonymous's avatar
    Anonymous
    4 years ago

    Hi Anonymous 

     

    Here is one way, you can get the list, then expand to new rows. Paste all in the Advanced Editor via blank query

    let
        Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WctR1UorViVZy1nUB0646bjruYJaHrjeY9lGKjQUA", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [Category = _t]),
        #"Changed Type" = Table.TransformColumnTypes(Source,{{"Category", type text}}),
        #"Added Custom" = Table.AddColumn(#"Changed Type", "Custom", each [a=Text.SplitAny([Category],"-,"),
    b={List.Min(a)..List.Max(a)}][b])
    in
        #"Added Custom"

     

1 Reply

  • Anonymous's avatar
    Anonymous
    Not applicable

    Hi Anonymous 

     

    Here is one way, you can get the list, then expand to new rows. Paste all in the Advanced Editor via blank query

    let
        Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WctR1UorViVZy1nUB0646bjruYJaHrjeY9lGKjQUA", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [Category = _t]),
        #"Changed Type" = Table.TransformColumnTypes(Source,{{"Category", type text}}),
        #"Added Custom" = Table.AddColumn(#"Changed Type", "Custom", each [a=Text.SplitAny([Category],"-,"),
    b={List.Min(a)..List.Max(a)}][b])
    in
        #"Added Custom"