استبدال الأنماط باستخدام REGEXREPLACE
استبدال النص المطابق بقيم جديدة في خلية
استبدال الأنماط باستخدام REGEXREPLACE درس مجاني في Excel Formulas Academy على CoddyKit. هذا هو الدرس 3 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في Excel Formulas Academy، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة Excel Formulas Academy 4 دروس في المجموع.
إعادة كتابة النص باستخدام الأنماط
اختبرت حتى الآن الأنماط واستخرجت أجزاء من النص. ستبدأ الآن بإعادة كتابة النص: إزالة المحارف غير المرغوب فيها، أو إعادة تنسيق أرقام الهواتف، أو دمج المسافات الزائدة.
تبحث REGEXREPLACE عن كل جزء من النص يطابق نمطًا ما، وتستبدله بنص الاستبدال الذي تختاره.
تُعد هذه الدالة في Google Sheets الأداة الأساسية لتنظيف النص، لأنها تستطيع تحويل عمود كامل غير منظم في عملية واحدة.
صيغة REGEXREPLACE
تأخذ REGEXREPLACE(text, pattern, replacement) ثلاثة وسائط: النص المصدر، والنمط المطلوب البحث عنه، وسلسلة الاستبدال.
وبخلاف REGEXEXTRACT، تستبدل كل تطابق تعثر عليه، وليس التطابق الأول فقط.
تزيل الصيغة أدناه جميع الأرقام من A2 باستبدال كل رقم بسلسلة فارغة. وتتحول Room 204 إلى Room .
=REGEXREPLACE(A2, "\d", "")الحذف بالاستبدال بسلسلة فارغة
من الحيل الشائعة حذف المحارف باستبدالها بسلسلة فارغة "".
تزيل الصيغة أدناه كل ما ليس رقمًا، وتُبقي الأرقام فقط. وتتحول (555) 123-4567 إلى 5551234567. وتعني الفئة [^\d] أي محرف ليس رقمًا، بينما يلتقط + سلاسل هذه المحارف دفعة واحدة.
=REGEXREPLACE(A2, "[^\d]+", "")مثال تطبيقي: دمج المسافات الزائدة
غالبًا ما يحتوي النص المستورد على مسافتين أو ثلاث مسافات متتالية. وتريد تقليص أي سلسلة من المسافات إلى مسافة واحدة.
تطابق الصيغة أدناه محرفًا واحدًا أو أكثر من محارف المسافات البيضاء، وتستبدل كل سلسلة بمسافة واحدة. ويمكنك دمجها لاحقًا مع TRIM لتنظيف طرفي النص أيضًا.
=REGEXREPLACE(A2, "\s+", " ")إعادة استخدام التطابق باستخدام المراجع الخلفية
يمكن لنص الاستبدال الإشارة مجددًا إلى مجموعات الالتقاط باستخدام $1 و$2 وما إلى ذلك. ويعني $1 كل ما طابقته مجموعة الالتقاط الأولى.
يتيح لك ذلك إعادة الترتيب أو إعادة التنسيق. تحول الصيغة أدناه Smith, John إلى John Smith من خلال التقاط الاسمين وتبديل ترتيبهما.
=REGEXREPLACE(A2, "(\w+), (\w+)", "$2 $1")مثال تطبيقي: تنسيق رقم هاتف
لنفترض أن A2 يحتوي على سلسلة نظيفة من 10 أرقام مثل 5551234567، وأنك تريد تحويلها إلى (555) 123-4567.
التقط ثلاثة أرقام، ثم ثلاثة أرقام، ثم أربعة أرقام، وأعد بناء الرقم مع إضافة التنسيق في نص الاستبدال. ويُشار إلى كل مجموعة برقمها.
=REGEXREPLACE(A2, "(\d{3})(\d{3})(\d{4})", "($1) $2-$3")استبدال كلمات محددة
يمكنك أيضًا استبدال الكلمات الحرفية. ولتوحيد الاختصارات، طابق الكلمة ثم استبدلها.
تغيّر الصيغة أدناه كل St. إلى Street في عنوان. تذكّر تخطي النقطة باستخدام \. كي تطابق نقطة حرفية بدلًا من أي محرف.
=REGEXREPLACE(A2, "St\.", "Street")الاستبدال مع تجاهل حالة الأحرف
تكون التعبيرات النمطية حساسة لحالة الأحرف افتراضيًا. ولمطابقة كلمة بغض النظر عن حالتها، أدرج الصيغ المختلفة في فئة أو أنشئ بدائل.
تستبدل الصيغة أدناه color أو Color بـ colour. وتطابق [Cc] أيًا من حالتي الحرف الأول.
=REGEXREPLACE(A2, "[Cc]olor", "colour")مثال تطبيقي: إخفاء الأرقام الحساسة
لإخفاء جميع أرقام البطاقة باستثناء الأرقام الأربعة الأخيرة، استبدل الأرقام الأولى بالحرف X.
تطابق الصيغة أدناه جميع الأرقام التي تسبق الأرقام الأربعة الأخيرة، وتستبدل كل رقم منها بحرف X. وبالنسبة إلى 1234567890123456، تحصل على XXXXXXXXXXXX3456.
=REGEXREPLACE(A2, "\d(?=\d{4})", "X")دمج عمليات التنظيف معًا
يتطلب التنظيف الفعلي غالبًا عدة خطوات. يمكنك تداخل استدعاءات REGEXREPLACE، بحيث تُمرر النتيجة الداخلية إلى الاستدعاء الخارجي.
تزيل الصيغة أدناه أولًا كل ما ليس حرفًا أو مسافة، ثم تدمج المسافات المتعددة في مسافة واحدة. توضح قراءة الصيغة من الداخل إلى الخارج ترتيب العمليات.
=REGEXREPLACE(REGEXREPLACE(A2, "[^A-Za-z ]", ""), "\s+", " ")تطبيقها على عمود كامل
مثل دوال التعبيرات النمطية الأخرى، صُممت REGEXREPLACE لتنظيف عمود كامل في عملية واحدة. تكتب الصيغة مرة واحدة ثم تملأها إلى أسفل بجوار بياناتك الأولية.
لنفترض أن العمود A يحتوي على أسماء منتجات تتبعها رموز زائدة مثل Chair (SKU-4821). تزيل الصيغة أدناه الرمز الموجود بين القوسين من كل صف، وتُبقي Chair فقط. أضف TRIM حولها لإزالة المسافة المتبقية.
=TRIM(REGEXREPLACE(A2, "\(.*\)", ""))تحقق سريع
اختبر مدى استيعابك لاستبدال الأنماط.
مراجعة: تحويل النص في عملية واحدة
تعلّمت أن REGEXREPLACE(text, pattern, replacement) تعيد كتابة كل تطابق في Google Sheets. أهم النقاط:
- استخدم
""للاستبدال بسلسلة فارغة وحذف المحارف غير المرغوب فيها - تُعد
[^\d]و\s+أداتين أساسيتين للتنظيف - يمكن إعادة استخدام مجموعات الالتقاط في نص الاستبدال بصيغة
$1و$2 - تخطَّ المحارف الخاصة الحرفية مثل
\. - تداخل الاستدعاءات يتيح لك دمج عمليات تنظيف متعددة
ستقرن في الخطوة التالية التعبيرات النمطية مع SPLIT وCLEAN لتقسيم البيانات المستوردة وترتيبها نهائيًا.
الأسئلة الشائعة
هل درس «استبدال الأنماط باستخدام REGEXREPLACE» مجاني؟
نعم — نص درس «استبدال الأنماط باستخدام REGEXREPLACE» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة Excel Formulas Academy، انتقل إلى CoddyKit PRO. تتضمن دورة Excel Formulas Academy 4 دروس في المجموع.
ماذا ستتعلم في «استبدال الأنماط باستخدام REGEXREPLACE»؟
استبدال النص المطابق بقيم جديدة في خلية تتمرن على Excel Formulas Academy مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.
هل أحتاج إلى خبرة سابقة لأبدأ Excel Formulas Academy؟
لا تُشترط خبرة سابقة. Excel Formulas Academy على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 3 من أصل 4.
كم من الوقت يستغرق درس «استبدال الأنماط باستخدام REGEXREPLACE»؟
معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.
هل يمكنني كتابة وتشغيل أكواد في درس Excel Formulas Academy هذا؟
نعم. كل درس في Excel Formulas Academy يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.
جميع الدروس في هذه الدورة
- اختبار الأنماط باستخدام REGEXMATCH
- استخراج الأنماط باستخدام REGEXEXTRACT
- استبدال الأنماط باستخدام REGEXREPLACE
- تقسيم البيانات الفوضوية وتنظيفها