2017-02-08 1 views
0

Ich habe Anforderung, Capital Chars aus einer gegebenen Zeichenfolge mit DWL abrufen. Beispiel - Eingabezeichenfolge - KinLiCheng dann Ausgabe sollte KLC sein. Gibt es eine DWL-Syntax, die das tun?Suche nach Capital Char in String in DWL

Vielen Dank für Ihre Hilfe im Voraus!

Antwort

0

Wir können mehrere DataWeave expressions Kombination verwenden, um die Zeichenfolge zu manipulieren:

  1. Scan einen Array mit allen Aktivierte Charakter zu erhalten: "KinLiCheng" scan /[A-Z]/
  2. abflachen des Array Ergebnis von Schritt # 1 in abzuflachen ein einzelnes einfaches Array: flatten (...)
  3. joinBy, um das Array oben in einen einzelnen String-Wert zu verschmelzen: joinBy ""

vollständiger Ausdruck: flatten ("KinLiCheng" scan /[A-Z]/) joinBy ""

+0

Dank entfernen! Es funktioniert wie vorgeschlagen – Maddy

0

Wir regex, dies zu tun

"KinLiCheng" replace /[a-z]/ with "" 

verwenden kann, kann auch

("KinLiCheng" splitBy "") -- ['a', 'b', 'c', 'd','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z'] 

wenn auch nicht eine hübsche Lösung

Ohne Regex getan werden

splitBy wird die Zeichenfolge KinLiCheng in ein Array

Array Darstellung Schnur [ "K", "i", "n", "L", „i konvertiert “ "C", "h", "e", "n", "g" ]

- ist dataweave Bedienelemente von Array für Ihre Hilfe

Further reading on Dataweave operators