Heim >Backend-Entwicklung >C++ >Wie entferne ich nicht-alphanumerische Zeichen außer Bindestrichen und Leerzeichen aus einer Zeichenfolge?
Nicht-alphanumerische Zeichen mit Ausnahme für Bindestriche und Leerzeichen entfernen
Benötige Hilfe beim Entfernen aller nicht-alphanumerischen Zeichen aus einer Zeichenfolge, möchte dies aber tun Bindestriche und Leerzeichen beibehalten? So erreichen Sie das:
Lösung:
Um dies zu erreichen, verwenden Sie einen regulären Ausdruck, um alle nicht alphanumerischen Zeichen außer Bindestrichen und Leerzeichen durch ein zu ersetzen leere Zeichenfolge. Hier ist der Codeausschnitt:
Regex rgx = new Regex("[^a-zA-Z0-9 -]"); str = rgx.Replace(str, "");
Dieses Regex-Muster [^a-zA-Z0-9 -] enthält ein Negationszeichen (^), um anzugeben, dass jedes Zeichen, das mit dem Muster übereinstimmt, ausgeschlossen werden soll. Innerhalb des Musters stimmt [a-zA-Z0-9 -] mit allen Buchstaben, Zahlen, Leerzeichen und Bindestrichen überein, sodass die Negation [^a-zA-Z0-9 -] mit allen Zeichen übereinstimmt, die weder alphanumerisch noch Bindestriche sind. Leerzeichen.
Durch die Verwendung von rgx.Replace(str, "") ersetzen Sie alle Vorkommen nicht-alphanumerischer Zeichen durch eine leere Zeichenfolge und entfernen sie so effektiv aus Ihrer Zeichenfolge, während sie beibehalten werden Bindestriche und Leerzeichen.
Das obige ist der detaillierte Inhalt vonWie entferne ich nicht-alphanumerische Zeichen außer Bindestrichen und Leerzeichen aus einer Zeichenfolge?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!