2017-03-15 9 views
1

Ich arbeite für eine Weile mit Microsoft Power Query M und ich habe die Situation, dass ich die Namen in der ersten Spalte in Camelcase verwandeln muss.String AnyName in Camelcase konvertieren

Ich erhalte die Daten in Form Any_Name. Erster Schritt I tun ist, zu ersetzen, _ durch „“:

#"Replaced Value" = Table.ReplaceValue(#"Expanded {0}","_","",Replacer.ReplaceText,{"Column1.dbColumnName"}) 

Die Ausgabe der obigen Funktion für jede Zelle in dem ersten colum ist anyname und ich brauche jetzt das erste Zeichen in einen Kleinbuchstaben umzuwandeln a haben Camelcase String.

Wie ist es möglich? Da gibt es keine Funktion dafür. Ich dachte daran, das erste Zeichen zu nehmen, indem ich den Text mit Text.Split aufspaltete. Diese Funktion erlaubt nur die Aufteilung auf das gewünschte Zeichen. Aber nicht bei der Nummer des Charakters. Daher ist es nicht möglich, Split bei Charpos 0 zu sagen. Die Umwandlung in Großbuchstaben erfolgt mit Text.Upper. Die Verwendung von Text.PadStart könnte verwendet werden, um das umgewandelte Zeichen erneut hinzuzufügen.

Mein Problem ist, dass ich weiß, wie man das auf alle Zellen in der ersten Spalte anwendet.

Antwort

3

können Sie verwenden

let 
    Source = #table(type table[Name = text],{{"MarcelBeug"},{"IrgendwPointer"}}), 
    camelCase = Table.TransformColumns(Source,{"Name", each Text.Lower(Text.Start(_,1))&Text.Range(_,1)}) 
in 
    camelCase