Forum Discussion
PowerQuery - Text before multiple Delimiters
Hi,
May I know is there any way I could split text before multiple Delimiters in one function?
| Original Column | Desired Result |
| 1 & 5 | 1 |
| 50 - 1000 | 50 |
| 1000/2000 | 1000 |
| 2000&5000 | 2000 |
| 5000/10000 | 5000 |
Great thanks!
Add a step to extract the text before one of those delimiters, and then modify the code in the formula bar to look like this
= Table.TransformColumns(Source, {{"Column1", each Text.Start(_, Text.PositionOfAny(_, {"&", "/", "-"})), type text}})
Pat
5 Replies
- mahoneypatMicrosoft Employee
Add a step to extract the text before one of those delimiters, and then modify the code in the formula bar to look like this
= Table.TransformColumns(Source, {{"Column1", each Text.Start(_, Text.PositionOfAny(_, {"&", "/", "-"})), type text}})
Pat
- doubleclickResolver I
how can this be done with a multiple character string?
- Travis_rhFrequent Visitor
Two follow-on questions:
- How might I add null handling? It seems that Power Query returns an error if it doesn't find any of the specific delimiters.
- How would I extract the text after the first space OR after the first "-"? I used Text.Middle instead of Text.Start which works for the space, but still includes the "-" in the extracted text.
Thank you,
-Travis
- Joris_NLHelper III
In case other people struggle with changing the 'text before delimiter' line into TransformColumns, like I did, here is some clarification:
= Table.TransformColumns(#"NameOfPreviousQueryStep", {{"Original column you want to edit", each Text.Start(_, Text.PositionOfAny(_, {"&", "/", "-", "any other symbols"})), type text}})So don't expect to create a new column!
- ngct1112Post Patron
mahoneypat it works in my query. Very brilliant. Thanks for your help!