ホームページ > バックエンド開発 > PHPチュートリアル > 正規表現を使用して英数字以外の文字を削除し、スペースをハイフンに置き換える方法

正規表現を使用して英数字以外の文字を削除し、スペースをハイフンに置き換える方法

Mary-Kate Olsen
リリース: 2024-10-23 22:05:29
オリジナル
756 人が閲覧しました

How to Strip Non-Alphanumeric Characters and Replace Spaces with Hyphens Using Regular Expressions?

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

問題: タイトルを URL に変換するときにユーザーが課題に直面する文字、数字、ハイフンのみを含むもの。彼らは、特殊文字を取り除き、スペースをハイフンに置き換える方法を模索しています。

解決策: 正規表現 (正規表現)

正規表現は、パターン マッチングと文字列の強力なツールです。操作。これらを使用して、目的の変換を実現できます。

コード:

<code class="php">function clean($string) {
    // Replace spaces with hyphens
    $string = str_replace(' ', '-', $string);
    
    // Remove non-alphanumeric characters and hyphens
    $string = preg_replace('/[^A-Za-z0-9\-]/', '', $string);
    
    // Replace multiple hyphens with a single one
    $string = preg_replace('/-+/', '-', $string);
    
    return $string;
}</code>
ログイン後にコピー

使用法:

<code class="php">echo clean('a|"bc!@£de^&amp;$f g');</code>
ログイン後にコピー

出力:

abcdef-g

追加の変更:

複数のハイフンが連続して表示されないようにするには、最後の行を置き換えます。

<code class="php">return preg_replace('/-+/', '-', $string);</code>
ログイン後にコピー
によるクリーン関数の

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

ソース:php
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート