English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

دليل دروس PHP الأساسية

دليل دروس PHP المتقدمة

PHP & MySQL

دليل مرجعي لPHP

استخدام دالة PHP preg_filter() و مثال

PHP نمط التعبير العادي (PCRE)

preg_filter وظيفة هذا الدالة هي تنفيذ بحث واستبدال تعبير عشوائي.

القواعد النحوية

مزيج preg_filter (مزيج $pattern , مزيج $replacement , مزيج $subject [, عدد $limit = -1 [, عدد &$count ]] )

preg_filter() مكافئ لـ preg_replace() ، لكنه يرجع فقط النتائج التي تتطابق مع الهدف.

شرح المعلمات:

  • $pattern: النمط الذي سيتم البحث عنه. يمكن أن يكون نصًا أو مجموعة نصوص.
  • $replacement: النص أو مجموعة النصوص المستخدمة للاستبدال.
  • $subject: النص أو مجموعة النصوص التي سيتم البحث فيها والاستبدال بها.
  • $limit: اختياري، أقصى عدد مرات الاستبدال لكل نمط في كل subject. القيمة الافتراضية هي -1 (لا نهائي).
  • $count: اختياري، عدد المرات التي تم فيها الاستبدال.

مثال عبر الإنترنت

<?php
$subject = array('1', 'a', '2', 'b', '3', 'A', 'B', '4'); 
$pattern = array('/\d/', '/[a-z]/', '/[1a]/'); 
$replace = array('A:$0', 'B:$0', 'C:$0'); 
echo "قيمة preg_filter:\n";
print_r(preg_filter($pattern, $replace, $subject)); 
echo "قيمة preg_replace:\n";
print_r(preg_replace($pattern, $replace, $subject)); 
?>

النتائج التالية كما يظهر:

قيمة preg_filter:
Array
(
    [0] => A:C:1
    [1] => B:C:a
    [2] => A:2
    [3] => B:b
    [4] => A:3
    [7] => A:4
)
قيمة preg_replace:
Array
(
    [0] => A:C:1
    [1] => B:C:a
    [2] => A:2
    [3] => B:b
    [4] => A:3
    [5] => A
    [6] => B
    [7] => A:4
)

من الممكن رؤية أن preg_filter يرجع فقط النتائج التي تتطابق، ويجاهل غير المتطابقين مباشرة، بينما يرجع preg_replace النتائج غير المتطابقة 'A' 'B' العناصر أيضًا.

PHP نمط التعبير العادي (PCRE)