ホームページ  >  記事  >  バックエンド開発  >  URL 内の英数字以外の文字を削除し、スペースをハイフンに置き換える方法

URL 内の英数字以外の文字を削除し、スペースをハイフンに置き換える方法

Patricia Arquette
Patricia Arquetteオリジナル
2024-10-24 02:53:29867ブラウズ

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

英数字以外の文字を削除し、スペースをハイフンに置き換える

URL を構築する場合、さまざまな文字を含むタイトルをきれいな文字列に変換する必要があります文字と数字だけで構成されています。これには、特殊文字を削除し、スペースをハイフンに置き換えることが含まれます。

正規表現を使用した実装

正規表現 (regex) は、このタスクに対する効果的なソリューションを提供します。望ましい結果を達成する方法は次のとおりです:

ステップ 1: スペースをハイフンに置き換えます

$string = str_replace(' ', '-', $string);

ステップ 2: 英数字以外の文字を削除します

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

この正規表現は、文字、数字、またはハイフン以外の文字を削除します。

使用法:

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

出力:

abcdef-g

複数の連続するハイフンの防止

複数の連続するハイフンが単一のハイフンに置き換えられるようにするには、次の追加手順を使用します。

$string = preg_replace('/-+/', '-', $string);

この手順では、2 つ以上の連続したハイフンがすべて 1 つのハイフンに置き換えられます。

以上がURL 内の英数字以外の文字を削除し、スペースをハイフンに置き換える方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。