Ich versuche, eine Regex-Funktion zu erstellen, die alle nicht alphanumerischen Zeichen entfernt und alle doppelten Zeichen entfernt, z. dies: aabcd * def% gGGhhhijkklmnoP \ 1223 würde dies werden: abcddefgGhijklmnoPR3 . Ich bin in der Lage, die Sonderzeichen leicht zu entfernen, aber kann nicht für das Leben von mir herausfinden, wie man die doppelten Charaktere entfernt? Dies ist mein aktueller Code zum Entfernen der Sonderzeichen:
%Vor%Wie kann ich die obige Regex erweitern, um nach doppelten Zeichen und solchen doppelten Zeichen zu suchen, die durch nicht-alphanumerische Zeichen getrennt sind.
Die Regex ist /[^\w\s]|(.)/gi
Testen Sie hier: Ссылка
Es wird die Rückwärtsreferenz verwendet, um nach einem beliebigen Zeichen (.)
gefolgt von demselben Zeichen
Wenn Sie nicht "nach doppelten Zeichen suchen" haben, meinen Sie aaa => a
Dann ist es /[^\w\s]|(.)(?=)/gi
Testen Sie hier: Ссылка
Beachten Sie, dass beide Regex nicht zwischen Groß- und Kleinschreibung unterscheiden. A == a
, also Aa
ist eine Wiederholung. Wenn Sie es nicht wollen, nehmen Sie die i
von /gi
Tags und Links javascript regex