PREG_REPLACE機能ブロック

この機能ブロックは、正規表現を使用して検索および置換を行います。

注意: この関数はバイナリセーフです。これはUTF8文字が直接処理できないことを意味します。

入力 PATTERN

検索する文字列としての式。いくつかのPCRE修飾子も利用可能です。

入力 REPLACEMENT

置換する文字列。この文字列には、\nまたは$nの形式で参照を含めることができます。後者が推奨されます。これらの各参照は、n番目の括弧付き検索パターンに一致したテキストで置換されます。nには0から99までの値を指定できます。\0または$0は、完全な検索パターンに一致したテキストを参照します。括弧付き部分検索パターンの番号を取得するには、左から右へ開く括弧が1から始まるように数えます。置換にバックスラッシュを使用するには、それを二重化する必要があります"\\"

後方参照の後に直接数字が続く置換(つまり、検索パターンと一致した直後に数字が来る)を使用する場合、\1のような形式で後方参照を記述できません。例えば、\11は関数を混乱させる可能性があります。これは、後方参照\1の後に数字1が続くか、単に後方参照\11を希望するのかわからないためです。このような場合の解決策は、${1}1を使用することです。これにより、孤立した後方参照$1が生成され、1は文字シンボルのままになります。

古い修飾子eを使用する場合、この関数は後方参照で置換される文字列内のいくつかの文字(具体的には'"\およびNULL)をマスクします。これは、単一または二重引用符を含む後方参照が使用される場合に構文エラーが発生しないようにするためです。文字列の構文を理解していることを確認し、評価された文字列がどのように見えるかを正確に把握してください。

入力 SUBJECT

この入力は検索対象の文字列を定義します。

入力 LIMIT

各subjectごとの各検索パターンに対して可能な最大置換数。デフォルト値:-1またはNULL(制限なし)。

出力 Q

一致が見つかった場合、新しい文字列Qが返されます。それ以外の場合はSUBJECTが変更せずに返されるか、エラーが発生した場合はNULLが返されます。

出力 COUNT

この出力は実行された置換の数を返します。