Forum Discussion

aaron797's avatar
aaron797
Icon for Advocate I rankAdvocate I
5 years ago
Solved

Power Query - Trim after character

I have a text field (Pace) that looks like MM:SS.xxxxx (Where 'x' is of varying length)   For example, current output Pace 01:31.240596 01:16.2000 01:30   My desired output is Pace 01:31.24...
  • v-easonf-msft's avatar
    5 years ago

    Hi,  aaron797 

    Try code as below:

    M query:

    let
        Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WMjC0MjbUMzIxMLU0U4rVAQsYmukZGRgYwLjGQFYsAA==", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [Pace = _t]),
        #"Changed Type" = Table.TransformColumnTypes(Source,{{"Pace", type text}}),
        #"Inserted Text Before Delimiter" = Table.AddColumn(#"Changed Type", "Number of Text Before Delimiter", each Text.PositionOf([Pace], ".",1), Int64.Type),
        #"Added Custom" = Table.AddColumn(#"Inserted Text Before Delimiter", "Length", each Text.Length([Pace])),
        #"Added Conditional Column" = Table.AddColumn(#"Added Custom", "Position of last character", each if [Number of Text Before Delimiter] = -1 then [Length] else if [Number of Text Before Delimiter] <> -1 then [Number of Text Before Delimiter]+4 else null),
        #"Added Custom1" = Table.AddColumn(#"Added Conditional Column", "Output", each Text.Middle([Pace],0,[Position of last character])),
        #"Removed Columns" = Table.RemoveColumns(#"Added Custom1",{"Number of Text Before Delimiter", "Length", "Position of last character"})
    in
        #"Removed Columns"

    Please check my sample file for more details.

     

    Best Regards,
    Community Support Team _ Eason