Forum Discussion
Anonymous
2 years agoNot applicable
How to convert text to Title Case/Proper Case/CamelCase
For example, how to convert following column values:
Column1
PP FABRICS - PP Fabrics
PP/HDCE FABRICS
CONTAINER
into:
Column1
PP Fabrics
PP/HDCE Fabrics
Container
Thanks
Hi, this will work with sample data, but I'm affraid that it won't solve your issue whit other texts
Result
Add this as custom column. Replace Source with your previous_step reference and [Column1] with your column with such text
= Table.AddColumn(Source, "Transformed", each [ a = List.RemoveMatchingItems(Text.SplitAny([Column1], " -"), {" ", ""}), b = List.Distinct(List.Transform(a, (x)=> if Text.Contains(x, "/") or Text.Length(x) < 3 then x else Text.Proper(x))), c = Text.Combine(b, " ") ][c], type text)Whole Code
let Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WCghQcHN0CvJ0DlbQVQBxEpOKMpOLlWJ1QHL6Hi7OrnAFYEFnf78QR08/1yAgNxYA", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [Column1 = _t]), Ad_Transformed = Table.AddColumn(Source, "Transformed", each [ a = List.RemoveMatchingItems(Text.SplitAny([Column1], " -"), {" ", ""}), b = List.Distinct(List.Transform(a, (x)=> if Text.Contains(x, "/") or Text.Length(x) < 3 then x else Text.Proper(x))), c = Text.Combine(b, " ") ][c], type text) in Ad_Transformed
1 Reply
- dufoq3
Community Champion
Hi, this will work with sample data, but I'm affraid that it won't solve your issue whit other texts
Result
Add this as custom column. Replace Source with your previous_step reference and [Column1] with your column with such text
= Table.AddColumn(Source, "Transformed", each [ a = List.RemoveMatchingItems(Text.SplitAny([Column1], " -"), {" ", ""}), b = List.Distinct(List.Transform(a, (x)=> if Text.Contains(x, "/") or Text.Length(x) < 3 then x else Text.Proper(x))), c = Text.Combine(b, " ") ][c], type text)Whole Code
let Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WCghQcHN0CvJ0DlbQVQBxEpOKMpOLlWJ1QHL6Hi7OrnAFYEFnf78QR08/1yAgNxYA", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [Column1 = _t]), Ad_Transformed = Table.AddColumn(Source, "Transformed", each [ a = List.RemoveMatchingItems(Text.SplitAny([Column1], " -"), {" ", ""}), b = List.Distinct(List.Transform(a, (x)=> if Text.Contains(x, "/") or Text.Length(x) < 3 then x else Text.Proper(x))), c = Text.Combine(b, " ") ][c], type text) in Ad_Transformed