Ich habe eine Notwendigkeit für eine Javascript-Regex, die Wörter in jeder Sprache übereinstimmen, aber für Emoji oder ein anderes Zeichen fehlschlagen. Lösung hier: passt alle Buchstaben plus Piktogramme und Emoji ([^\u0000-\u007F]+
).Regex passende Buchstaben - einschließlich nicht-Latein, aber ohne Emoji
es ein bisschen ändern scheint zu tun, was ich brauche, aber ich bin mir nicht sicher, wie sicher es ist: ([a-zA-Z]|[^\u0000-\u007F\u200d-\u3299\ud83c-\udfff\ufe0e\ufe0f])+
Beispiel: America
Österreich
Россия
Ελλάδα
nur Sollte Buchstaben übereinstimmen und Stoppen Sie vor dem Emoji. Sollte nicht Emojis mit Schreiben Darstellungen, zum Beispiel entspricht: 1️⃣#️⃣*️⃣
Relevant: http://www.unicode.org/Public/emoji/5.0/emoji-variation-sequences.txt
Bit von Kontext: Ich versuche, diesen Parser zu patchen: https://github.com/Khan/simple-markdown/blob/master/simple-markdown.js#L1304 auf Emojis zu brechen, weil zur Zeit paßt es als viel Text, wie es kann. Ohne dass das Anpassen/Ersetzen von Emoji über diesen Parser problematisch ist. Das Entfernen von aus dem markierten Regex führt zu dem, was ich brauche, aber der Parser beginnt, Wörter zu zerlegen. Einige Sprachen (kyrillisch) werden pro Buchstabe gebrochen, was nicht gut für die Leistung ist. Ich muss entweder diese Regex patchen, um Buchstaben zuzulassen, aber nicht Emojis, oder eine Regex setzen, die den gesamten Text davor fängt.
Edit: Hinzugefügt einige Beispiele
Edit: Hinzugefügt Sprache Einschränkung
Yep einige Beispiele hinzugefügt – Max