Emoji-Erkennung via PowerFX in PowerApps Canvas

Diese Anleitung bietet eine detaillierte Einführung in die Verwendung von PowerFX innerhalb von PowerApps Canvas, um Emojis in Texteingaben zu identifizieren.

Der Fokus liegt darauf, Texte von Emojis zu bereinigen, was besonders wichtig ist, wenn Sie reine Textdaten ohne Emojis benötigen. Dies kann erforderlich sein, um die Daten in ältere Systeme zu integrieren, die möglicherweise keine Emojis verarbeiten können und bei denen die Anwesenheit von Emojis zu Fehlern führen könnte.

Durch das Entfernen von Emojis aus den Texten können Sie sicherstellen, dass die Daten korrekt in das Zielsystem übertragen werden, wodurch das Risiko von Datenverarbeitungsfehlern minimiert wird.

Anmerkung


Das Herzsymbol (❤️) zählt zu den Unicode-Zeichen, die in HTML direkt verwendet werden können, ohne dass eine spezielle Kodierung notwendig ist. Es gehört somit zu den Symbolen, die ohne zusätzliche Umwandlung in HTML-Dokumenten erkannt und dargestellt werden. 

Es ist jedoch zu beachten, dass die in dieser Anleitung beschriebene Methode nicht für alle Arten von Unicode-Zeichen anwendbar ist. Sie bezieht sich ausschließlich auf solche Zeichen, die eine Kodierung benötigen, um in HTML-Dokumenten korrekt eingebettet und dargestellt zu werden.

Zu den Unicode-Zeichen, die direkt in HTML eingebettet werden können und keiner besonderen Kodierung bedürfen, zählen:

  • Typografische Zeichen: wie Anführungszeichen, Gedankenstriche und das Eurozeichen (€).
  • Wissenschaftliche Symbole: wie mathematische Operatoren und griechische Buchstaben.
  • Emojis: Alle Emojis sind Unicode-Zeichen und können direkt verwendet werden.
  • Interpunktionszeichen: die über die grundlegenden ASCII-Zeichen hinausgehen.
  • Seltene oder spezielle Zeichen: wie Brüche (z.B. ⅓, ⅔, ⅛).

Welche Funktionen werden in diesem Beispiel dafür verwendet?

  1. EncodeHTML
    • Die Funktion EncodeHTML codiert eine Zeichenfolge und ersetzt bestimmte Zeichen, die maskiert werden müssen, um in einem HTML-Kontext richtig angezeigt zu werden. Zum Beispiel die Charaktere <, > und & werden ersetzt durch <, >, und &.
  2. IsMatch
    • Die IsMatch-Funktion prüft, ob eine Textzeichenfolge mit einem Muster übereinstimmt, das normale Zeichen, vordefinierte Muster oder einen regulären Ausdruck enthält.

Anleitung

um die HTML Charaktere für die Emojis auslesen zu können, benötigen wir die EncodeHTML Funktion.

EncodeHTML("Wert der 🚀 Emojis enthält")
Result:
Wert der &#128640; Emojis enth&#228;lt

um zu prüfen, ob die Zeichenfolge ein Emoji enthält, nehmen wir die IsMatch Funktion.
Ich verwende den Regex Code "&#\w*;” um alle vorkommen der HTML-Entitäten zu ermitteln.

IsMatch(
    EncodeHTML("Wert der 🚀 Emojis enthält"),
    "&#\w*;",
    MatchOptions.Contains
)
Result:
true