تسمح لك الدالة REGEXREPLACE باستبدال نص من سلسلة بسلسلة أخرى، استنادا إلى تعبير عادي تم توفيره ("regex").
بناء الجملة
تستبدل الدالة REGEXREPLACE السلاسل داخل النص المقدم الذي يطابق النمطبالاستبدال.
بناء جملة الدالة REGEXEXTRACT هو:
REGEXREPLACE(text, pattern, replacement, [occurrence], [case_sensitivity])
الوسيطة |
الوصف |
---|---|
النص (مطلوب) |
النص أو المرجع إلى خلية تحتوي على النص الذي تريد استبدال السلاسل فيه. |
النمط (مطلوب) |
التعبير العادي ("regex") الذي يصف نمط النص الذي تريد استبداله. |
تغيير (مطلوب) |
النص الذي تريد استبدال مثيلات النمط. |
حدوث |
يحدد مثيل النمط الذي تريد استبداله. بشكل افتراضي، التكرار هو 0، والذي يحل محل جميع المثيلات. يحل الرقم السالب محل هذا المثيل، ويبحث من النهاية. |
case_sensitivity |
تحديد ما إذا كانت المطابقة حساسة لحالة الأحرف. بشكل افتراضي، تكون المطابقة حساسة لحالة الأحرف. أدخل بإحدى الطرق التالية: 0: حساس لحالة الأحرف 1: غير حساس لحالة الأحرف |
ملاحظات: عند كتابة أنماط regex، يمكن استخدام الرموز التي تسمى "الرموز المميزة" التي تتطابق مع مجموعة متنوعة من الأحرف. هذه بعض الرموز المميزة البسيطة للرجوع إليها:
-
"[0-9]": أي رقم رقمي
-
"[a-z]": حرف في نطاق من إلى z
-
".": أي حرف
-
"a": الحرف "a"
-
"a*": صفر أو أكثر "a"
-
"a+": واحد أو أكثر من "a"
-
تستخدم جميع التعبيرات العادية لهذه الدالة، بالإضافة إلى REGEXTEST و REGEXEXTRACT"نكهة" PCRE2 من regex.
-
ترجع REGEXEXTRACT دائما القيم النصية. يمكنك تحويل هذه النتائج مرة أخرى إلى رقم باستخدام الدالة VALUE.
أمثلة
انسخ بيانات المثال وألصقها في الخلية A1 في ورقة عمل Excel جديدة. إذا أردت ذلك، يمكنك ضبط عرض العمود لرؤية جميع البيانات.
استخدم REGEXREPLACE لتعويض أرقام الهواتف عن طريق استبدال أول 3 أرقام ب ***، باستخدام النمط
"[0-9]+-"
البيانات |
سونيا ريس (378) 555-4195 الملاك براون (878) 555-8622 بليك مارتن (437) 555-8987 وليام كيربي (619) 555-4212 Avery Smith(579) 555-5658 باركر جونز (346) 555-0925 Liam Small(405) 555-0887 Hollie Rees(666) 555-1872 |
الصيغ |
=REGEXREPLACE(A2,"[0-9]+-","***-") |
يوضح الرسم التوضيحي التالي النتيجة. ستحتاج إلى التفاف النص على الخلية A4 لإظهار فواصل الأسطر في النتيجة.
استخدم REGEXREPLACE مع مجموعات الالتقاط لفصل وإعادة ترتيب الاسم المعطى واسم العائلة، باستخدام النمط: "([A-Z][a-z]+)([A-Z][a-z]+)"; والاستبدال: "$2, $1".
ملاحظة: يتم تعريف مجموعات الالتقاط في نمط مع أقواس "()"، ويمكن الإشارة إليها في الاستبدال على أنها "$n". في هذا المثال، يشير $1 و$2 إلى مجموعتي الالتقاط الأولى والثانية، على التوالي.
بيانات |
SoniaBrown |
الصيغ |
=REGEXREPLACE(A2,"([A-Z][a-z]+)([A-Z][a-z]+)","$2, $1") |
يبين الرسم التوضيحي التالي النتائج.