ホームページ  >  記事  >  バックエンド開発  >  PHP は関数を巧みに使用して、指定された部分文字列を * 記号 (大文字と小文字を区別しない) に置き換えます。

PHP は関数を巧みに使用して、指定された部分文字列を * 記号 (大文字と小文字を区別しない) に置き換えます。

青灯夜游
青灯夜游オリジナル
2021-08-10 14:35:233232ブラウズ

前回の記事では、大文字と小文字を区別して特定の部分文字列を他の値に置き換えることができる文字列置換メソッドを紹介しました。興味のある方は、リンクをクリックして確認してください→「 PHP を使用して指定された部分文字列を別の値に置き換えるにはどうすればよいですか?" ステータ文字列を * (大文字と小文字を区別) に置き換えます。今回は、文字列内の特定の部分文字列を置換する別の方法を紹介しますので、必要な場合は参照してください。

上記では、str_replace() 関数を使用して指定された部分文字列を置換する方法を紹介しましたが、この方法では、文字列内に文字列が存在する限り、大文字と小文字が区別されます。 case が要件を満たしていません。 、指定された部分文字列とまったく同じであることはできないため、置換は実行されません。

ただし、文字列置換を実行する場合、それほど厳密である必要はなく、文字の大文字と小文字を無視できる場合もあります。今回は置換文字の大文字と小文字を区別しない方法を紹介します。

次の例を見てみましょう:

<?php
$str = &#39;hello,world,Hello,World&#39;;
$replace = &#39;*&#39;;
$search1 = &#39;hello&#39;;
$search2 = &#39;world&#39;;
echo str_ireplace($search1, $replace, $str)."<br>";
echo str_ireplace($search2, $replace, $str)."<br>";
?>

上記のコードを観察すると、$str 文字列 "

hello,world,Hello,World" を追加する必要があります。 「hello」および「world」の部分文字列は #* に置き換えられます。ただし、要件を満たす $str 文字列には 2 つのタイプがあります。1 つは完全一致 (大文字と小文字が一致する) で、もう 1 つは不完全一致 (大文字と小文字が一致しない) です。

しかし、大文字と小文字を無視できる str_ireplace() 関数を使用しているため、文字列 $str 内の 2 つの部分文字列「hello」と「Hello」、「world」と「world」が置換されます。 「World」は * に置き換えられます。出力結果は次のようになります:

PHP は関数を巧みに使用して、指定された部分文字列を * 記号 (大文字と小文字を区別しない) に置き換えます。

# 非常に単純ではありませんか? str_ireplace() 関数を見てみましょう。

str_ireplace($search,$replace,$string,$count)この関数は、大文字と小文字を区別せずに、置換文字列内の一部の文字を無視できます。この関数で受け入れられるパラメータは同じです同様に、最初の 3 つのパラメータは必須 (省略できません) で、最後のパラメータ $count は省略されます (ただし、設定されている場合は、置換の数を取得できます)。

Parameter

$count は、置換の数をカウントする変数を受け入れることができます。このパラメータが設定されている場合、合計で実行された置換の数を知ることができます。

<?php
header("Content-Type: text/html;charset=utf-8");    //设置字符编码
$str = &#39;hello,world,Hello,World&#39;;
$replace = &#39;*&#39;;
$search1 = &#39;hello&#39;;
$search2 = &#39;world&#39;;
echo str_ireplace($search1, $replace, $str, $i)."<br>";
echo  "一共执行了  $i"." 次替换<br><br>";

echo str_ireplace($search2, $replace, $str, $i)."<br>";
echo  "一共执行了  $i"." 次替换<br><br>";
?>

出力結果:

PHP は関数を巧みに使用して、指定された部分文字列を * 記号 (大文字と小文字を区別しない) に置き換えます。

説明:

str_ireplace() 関数と str_replace() 関数は直接置換する必要がある部分文字列を与えるので、両方の関数を使用して中国語の文字を置換できます。

<?php
header("Content-Type: text/html;charset=utf-8");    //设置字符编码
$str = &#39;你好,欢迎来到这里!&#39;;
$replace = &#39;*&#39;;
$search1 = &#39;你好&#39;;
$search2 = &#39;欢迎&#39;;
echo str_ireplace($search1, $replace, $str)."<br>";
echo str_replace($search2, $replace, $str)."<br>";
?>

出力結果:

PHP は関数を巧みに使用して、指定された部分文字列を * 記号 (大文字と小文字を区別しない) に置き換えます。

純粋な中国語の文字列はほぼ同じですが、中国語と英語が混在した文字列では大文字と小文字が区別されるため、ニーズに基づいてどれを使用するかを選択できます。

<?php
header("Content-Type: text/html;charset=utf-8");    //设置字符编码
$str = &#39;你好,欢迎来到PHP中文网!&#39;;
$replace = &#39;这里&#39;;
$search1 = &#39;PHP中文网&#39;;
$search2 = &#39;php中文网&#39;;
echo str_ireplace($search1, $replace, $str)."<br>";
echo str_replace($search2, $replace, $str)."<br>";
?>

出力結果:

PHP は関数を巧みに使用して、指定された部分文字列を * 記号 (大文字と小文字を区別しない) に置き換えます。

わかりました。他に知りたいことがある場合は、これをクリックしてください。 → →

php ビデオチュートリアル

最後に、古典的なコース「

PHP 文字列処理 (翡翠少女般若心経編)」を読むことをお勧めします。無料です。ぜひ学んでください。 !

以上がPHP は関数を巧みに使用して、指定された部分文字列を * 記号 (大文字と小文字を区別しない) に置き換えます。の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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