Heim > Backend-Entwicklung > PHP-Tutorial > Wie entferne ich nicht-alphanumerische Zeichen und ersetze Leerzeichen durch Bindestriche in URLs?

Wie entferne ich nicht-alphanumerische Zeichen und ersetze Leerzeichen durch Bindestriche in URLs?

Patricia Arquette
Freigeben: 2024-10-24 02:53:29
Original
940 Leute haben es durchsucht

How to Strip Non-Alphanumeric Characters and Replace Spaces with Hyphens in URLs?

Nicht-alphanumerische Zeichen entfernen und Leerzeichen durch Bindestriche ersetzen

Beim Erstellen von URLs ist es notwendig, Titel, die verschiedene Zeichen enthalten, in saubere Zeichenfolgen umzuwandeln besteht ausschließlich aus Buchstaben und Zahlen. Dabei werden Sonderzeichen entfernt und Leerzeichen durch Bindestriche ersetzt.

Implementierung mit regulären Ausdrücken

Reguläre Ausdrücke (Regex) bieten eine effektive Lösung für diese Aufgabe. So erzielen Sie das gewünschte Ergebnis:

Schritt 1: Leerzeichen durch Bindestriche ersetzen

$string = str_replace(' ', '-', $string);
Nach dem Login kopieren

Schritt 2: Nicht-alphanumerische Zeichen entfernen

$string = preg_replace('/[^A-Za-z0-9\-]/', '', $string);
Nach dem Login kopieren

Dieser Regex-Ausdruck entfernt alle Zeichen, die keine Buchstaben, Zahlen oder Bindestriche sind.

Verwendung:

echo clean('a|"bc!@£de^&$f g');
Nach dem Login kopieren

Ausgabe:

abcdef-g
Nach dem Login kopieren

Verhindern mehrerer aufeinanderfolgender Bindestriche

Um sicherzustellen, dass mehrere aufeinanderfolgende Bindestriche durch einen einzelnen Bindestrich ersetzt werden, verwenden Sie den folgenden zusätzlichen Schritt:

$string = preg_replace('/-+/', '-', $string);
Nach dem Login kopieren

Dieser Schritt ersetzt alle Vorkommen von zwei oder mehr aufeinanderfolgenden Bindestrichen durch einen einzelnen Bindestrich.

Das obige ist der detaillierte Inhalt vonWie entferne ich nicht-alphanumerische Zeichen und ersetze Leerzeichen durch Bindestriche in URLs?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage