Fabric is Generally Available. Browse Fabric Presentations. Work towards your Fabric certification with the Cloud Skills Challenge.
I couldn't find a example for how to do this (Removing Repeating Spaces) so I am posting this. It would work for any repeating Characters beyond spaces.
let
Source = "abc ABC DEF ABC",
StringToCleanOfExtraSpaces = Source,
SourceSingleSpaced = Text.Combine(
List.RemoveNulls(
List.Transform(
List.Positions(
Text.ToList(
StringToCleanOfExtraSpaces)), each
if _ = 0 then Text.Range(StringToCleanOfExtraSpaces, _ , 1)
else if Text.Range(StringToCleanOfExtraSpaces, _ -1,1)=" " and Text.Range(StringToCleanOfExtraSpaces, _ ,1)=" " then null
else Text.Range(StringToCleanOfExtraSpaces, _, 1))))
in
SourceSingleSpaced
Solved! Go to Solution.
Hi @KilleenJeffrey,
There is no stock function to remove repeating spaces. If you only concerned about spaces, the function can be shorter, but not much:
let
Source = "abc ABC DEF ABC",
StringToCleanOfExtraSpaces = Source,
SourceSingleSpaced = Text.Combine(
List.Accumulate(
Text.ToList(StringToCleanOfExtraSpaces), {}, (a, n)=> if n = " " and List.Last(a) = " " then a else a & {n}))
in
SourceSingleSpaced
Kind regards,
John
Here are a couple of shorter options.
let
StringToClean = " abc ABC DEF ABC ",
SplitText = Text.Split(StringToClean, " "),
RemoveBlanks = List.Select(SplitText, each _ <> ""),
Result = Text.Combine(RemoveBlanks, " ")
in
Result
This is a slightly simplified version of this post (only works for spaces).
let
StringToClean = " abc ABC DEF ABC ",
Result = Text.Combine(Splitter.SplitTextByWhitespace()(Text.Trim(StringToClean)), " ")
in
Result
Credit to Frank Tonsen's comment on this post.
Hi @KilleenJeffrey,
There is no stock function to remove repeating spaces. If you only concerned about spaces, the function can be shorter, but not much:
let
Source = "abc ABC DEF ABC",
StringToCleanOfExtraSpaces = Source,
SourceSingleSpaced = Text.Combine(
List.Accumulate(
Text.ToList(StringToCleanOfExtraSpaces), {}, (a, n)=> if n = " " and List.Last(a) = " " then a else a & {n}))
in
SourceSingleSpaced
Kind regards,
John
Here are a couple of shorter options.
let
StringToClean = " abc ABC DEF ABC ",
SplitText = Text.Split(StringToClean, " "),
RemoveBlanks = List.Select(SplitText, each _ <> ""),
Result = Text.Combine(RemoveBlanks, " ")
in
Result
This is a slightly simplified version of this post (only works for spaces).
let
StringToClean = " abc ABC DEF ABC ",
Result = Text.Combine(Splitter.SplitTextByWhitespace()(Text.Trim(StringToClean)), " ")
in
Result
Credit to Frank Tonsen's comment on this post.
For spaces that last example is slick
Check out the November 2023 Power BI update to learn about new features.
Read the latest Fabric Community announcements, including updates on Power BI, Synapse, Data Factory and Data Activator.
Join us for a free, hands-on Microsoft workshop led by women trainers for women where you will learn how to build a Dashboard in a Day!