PHP preg_filter()関数
例
文字列のリストで数字を角括弧で囲みます。
<?php
$input = [
"It is 5 o'clock",
"40 days",
"No numbers here",
"In the year 2000"
];
$result = preg_filter('/[0-9]+/', '($0)', $input);
print_r($result);
?>
定義と使用法
preg_filter()
関数は、パターンの一致が置換文字列に置き換えられた文字列または文字列の配列を返します。
入力が配列の場合、この関数は配列を返します。入力が文字列の場合、この関数は文字列を返します。
この関数はpreg_replace()
と1 つの違いがあります。パターンに一致するものが入力文字列で見つからない場合、その文字列は戻り値で使用されません。このシナリオでは、入力が配列ではなく文字列の場合、関数はnullを返します。
置換文字列にはnがパターン内のグループのインデックスである、\n または$nという形式の後方参照が含まれることがあります。返される文字列の中で、\nと\$nのインスタンスは、グループによってマッチされた部分文字列、または、\0か\$0が使用されている場合は、式全体によって置換されます。
構文
<div>preg_filter(<em>pattern, replacement, input, limit, count</em>)</div>
パラメータ値
パラメータ | 説明 |
---|---|
pattern | Required 何を検索するかを示す正規表現が含まれています |
replacement | Required 一致したパターンを置き換える文字列。後方参照が含まれている可能性があります |
input | Required 置換が実行される文字列または文字列の配列 |
limit | Optional デフォルトは -1 で、無制限を意味します。各文字列で実行できる置換の数に制限を設定します |
count | Optional 関数が実行された後、この変数には、実行された置換の数を示す数値が含まれます |
Technical Details
Return Value: | 入力が配列の場合は置換された文字列の配列を返す。入力が文字列の場合は置換された文字列を返す。 入力が文字列でマッチしなかった場合はnullを返します。 |
---|---|
PHP バージョン: | 5.3.0 |
プログラミング学習を加速させる
プログラミングをプロの講師に教えてもらいませんか。