str_replace( mixed $search, mixed $replace, mixed $subject[, int &$count] )

str_replace( mixed $search, mixed $replace, mixed $subject[, int &$count] )は、対象文字列「$subject」の中の、検索文字列「$search」に一致する部分文字列を、置換文字列「$replace」に置き換える組み込み関数。

検索文字列「$search」、置換文字列「$replace」、対象文字列「$subject」を、それぞれ配列で指定し、複数の置換を一括して行うこともできる。

str_ireplace( mixed $search, mixed $replace, mixed $subject[, int &$count] )と似ているが、大文字と小文字を区別する点が異なる。

定義

多様な型 str_replace( 多様な型 $search, 多様な型 $replace, 多様な型 $subject[, 整数型 &$count] );

パラメータ

多様な型 $search

検索文字列を指定する。

検索文字列を格納した配列を指定することもできる。

大文字と小文字を区別する。

多様な型 $replace

置換文字列を指定する。

置換文字列を格納した配列を指定することもできる。

多様な型 $subject

検索の対象となる文字列を指定する。

対象文字列を格納した配列を指定することもできる。

整数型 &$count

置き換えた部分文字列の個数を取得できる。

ここに指定した変数に格納する。

戻り値

対象文字列「多様な型 $subject」の中の、検索文字列「多様な型 $search」に一致した部分文字列を、置換文字列「多様な型 $replace」に置き換えた文字列を返す。

「多様な型 $subject」が、検索対象文字列を格納した配列の場合、置換後文字列を格納した配列を返す。

構文

検索文字列を置換

置換後文字列 = str_replace( 検索文字列, 置換文字列, 対象文字列 );

「対象文字列」の中の、「検索文字列」に一致した部分文字列を、「置換文字列」に置き換え、「置換後文字列」を返す。

検索文字列を置き換え、置き換えた部分文字列の個数を得る

置換後文字列 = str_replace( 検索文字列, 置換文字列, 対象文字列, 変数 );

「対象文字列」の中の、「検索文字列」に一致した部分文字列を、「置換文字列」に置き換え、「置換後文字列」を返す。

置き換えた部分文字列の個数を「変数」に格納する。

サンプル

検索文字列を置換

<?php
$varSubject = 'Color: color<br />';
echo str_replace( 'color', 'Red', $varSubject );
?>

↓↓↓出力結果↓↓↓

Color: Red

複数の検索文字列を置換

<pre>
<?php
$varSubject = 'Price: price<br />Color: color<br />Size: size<br />';
$arraySearch = array( 'price', 'color', 'size' );
$arrayReplace = array( '2,000円', 'Red', 'M' );
echo str_replace( $arraySearch, $arrayReplace, $varSubject );
?>
</pre>

↓↓↓出力結果↓↓↓

Price: 2,000円
Color: Red
Size: M

複数の検索文字列を置き換え、置き換えた個数を得る

<pre>
<?php
$varSubject = '色は、color、サイズは、sizeサイズ。<br />Price: price<br />Color: color<br />Size: size<br />';
$arraySearch = array( 'price', 'color', 'size' );
$arrayReplace = array( '2,000円', 'Red', 'M' );
echo str_replace( $arraySearch, $arrayReplace, $varSubject, $varCount );
echo "{$varCount}個の文字列を置き換えました。";
?>
</pre>

↓↓↓出力結果↓↓↓

色は、Red、サイズは、Mサイズ。
Price: 2,000円
Color: Red
Size: M
5個の文字列を置き換えました。

複数の対象文字列の、複数の検索文字列を置換

<pre>
<?php
$arraySubject = array(
    "値段は、price。\n",
    "色は、color、サイズは、sizeサイズ。\n",
    "Price: price\nColor: color\nSize: size\n"
);
$arraySearch = array( 'price', 'color', 'size' );
$arrayReplace = array( '2,000円', 'Red', 'M' );
$arrayReturn = str_replace( $arraySearch, $arrayReplace, $arraySubject, $varCount );
foreach ( $arrayReturn as $value ) {
    echo $value;
}
echo "{$varCount}個の文字列を置き換えました。";
?>
</pre>

↓↓↓出力結果↓↓↓

値段は、2,000円。
色は、Red、サイズは、Mサイズ。
Price: 2,000円
Color: Red
Size: M
6個の文字列を置き換えました。

HTMLタグ内の検索文字列を置換

<?php
$varSubject = '<p style="color: %color%;">サンプル</p>';
echo str_replace( "%color%", "red", $varSubject );
?>

↓↓↓出力結果↓↓↓

<p style="color: red;">サンプル</p>

HTMLタグ内の複数の検索文字列を置換

<?php
$varSubject = '<p style="color: %color%; font-size: %size%;">サンプル</p>';
$arraySearch = array( '%color%', '%size%' );
$arrayReplace = array( 'red', '20px' );
echo str_replace( $arraySearch, $arrayReplace, $varSubject );
?>

↓↓↓出力結果↓↓↓

<p style="color: red; font-size: 20px;">サンプル</p>

複数のHTMLタグ内の複数の検索文字列を置換

<?php
$arraySubject = array(
    "<p style=\"color: %color%; font-size: %size%;\">サンプル1</p>\n",
    "<p style=\"color: %color%; font-size: %size%;\">サンプル2</p>\n",
    "<p style=\"color: %color%; font-size: %size%;\">サンプル3</p>\n"
);
$arraySearch = array( '%color%', '%size%' );
$arrayReplace = array( 'red', '20px' );
$arrayReturn = str_replace( $arraySearch, $arrayReplace, $arraySubject, $varCount );
foreach ( $arrayReturn as $value ) {
    echo $value;
}
echo "{$varCount}個の文字列を置き換えました。";
?>

↓↓↓出力結果↓↓↓

<p style="color: red; font-size: 20px;">サンプル1</p>
<p style="color: red; font-size: 20px;">サンプル2</p>
<p style="color: red; font-size: 20px;">サンプル3</p>
6個の文字列を置き換えました。

スポンサード リンク

カテゴリー: PHP, 文字列, 検索, 組み込み関数, 編集, 置換, 配列 タグ: パーマリンク