0Pricing
Excel Formulas Academy · درس

استخراج الأنماط باستخدام REGEXEXTRACT

استخراج الجزء من سلسلة نصية الذي يطابق نمطًا

استخراج الأنماط باستخدام REGEXEXTRACT درس مجاني في Excel Formulas Academy على CoddyKit. هذا هو الدرس 2 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في Excel Formulas Academy، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة Excel Formulas Academy 4 دروس في المجموع.

من نعم أو لا إلى استخراج المطابقة

تخبركم REGEXMATCH ما إذا كان النمط موجودًا. وغالبًا ما تريدون النص المطابق نفسه، مثل الأرقام من Order #4821 أو النطاق من عنوان بريد إلكتروني.

وهذه هي مهمة REGEXEXTRACT. فهي تعثر على الجزء الأول من النص الذي يطابق النمط، وتُرجع ذلك الجزء كقيمة للخلية.

هذه أيضًا دالة في Google Sheets. وهي إحدى أوضح الطرق لاستخراج أجزاء منظمة من البيانات المستوردة وغير المرتبة.

صيغة REGEXEXTRACT

تُرجع REGEXEXTRACT(text, pattern) أول سلسلة فرعية من text تطابق pattern.

إذا لم توجد أي مطابقة، فإنها تُرجع خطأ #N/A بدلًا من قيمة فارغة، ومن المهم تذكّر ذلك.

تستخرج الصيغة أدناه أول تسلسل من الأرقام من A2. فبالنسبة إلى Order 4821، تُرجع 4821.

=REGEXEXTRACT(A2, "\d+")

تُرجع نصًا لا رقمًا

تُرجع REGEXEXTRACT دائمًا نصًا، حتى عندما تكون المحارف المطابقة أرقامًا. لذلك تعود 4821 كسلسلة نصية، وليست رقمًا يمكنكم جمعه.

لتحويلها إلى رقم فعلي، أحطوها بـ VALUE. تستخرج الصيغة أدناه الأرقام وتحولها حتى تتمكنوا من إجراء عمليات حسابية على الناتج.

=VALUE(REGEXEXTRACT(A2, "\d+"))

استخراج الحروف أو الرموز

لا تقتصر الأنماط على الأرقام. لاستخراج بادئة مكوّنة من أحرف كبيرة، استخدموا فئة مع محدد تكرار.

تستخرج الصيغة أدناه الأحرف الأولى من رمز مثل INV2024، وتُرجع INV. ويعني [A-Z]+ حرفًا كبيرًا واحدًا أو أكثر على التوالي.

=REGEXEXTRACT(A2, "[A-Z]+")

مثال تطبيقي: تقسيم رمز منتج

لنفترض أن A2 تحتوي على SKU-4821-RED وأنكم تريدون الجزء الرقمي الأوسط فقط. يمكنكم وصف موضعه باستخدام السياق المحيط به داخل النمط.

تبحث الصيغة أدناه عن الأرقام الواقعة بين شرطتي وصل، وتُرجع 4821. وتوجّه شرطتا الوصل الحرفيتان المحرك إلى تسلسل الأرقام الصحيح.

=REGEXEXTRACT(A2, "-(\d+)-")

تُعيد مجموعات الالتقاط الجزء المطلوب فقط

لاحظ الأقواس في الصيغة الأخيرة: (\d+). هذه مجموعة التقاط.

عندما يحتوي نمطك على مجموعة التقاط، يعيد REGEXEXTRACT ما يوجد داخل الأقواس فقط، وليس التطابق الكامل. لذلك تعيد -(\d+)- القيمة 4821 وتحذف الشرطتين.

تتيح لك مجموعات الالتقاط مطابقة السياق المحيط لتحسين الدقة، مع استخراج الجزء الذي تحتاج إليه فقط.

=REGEXEXTRACT(A2, "-(\d+)-")

مثال تطبيقي: استخراج نطاق البريد الإلكتروني

من sam@coddykit.com تريد استخراج النطاق coddykit.com. طابق @، ثم التقط كل ما يأتي بعده حتى النهاية.

تعيد الصيغة أدناه الجزء من A2 الذي يلي علامة @. تلتقط (.+) محرفًا واحدًا أو أكثر من أي نوع، بينما يربط $ ذلك بنهاية السلسلة.

=REGEXEXTRACT(A2, "@(.+)$")

تجعل محددات الموضع الاستخراج دقيقًا

تساعدك محددات الموضع على استخراج جزء من موضع معروف. لاستخراج الكلمة الأولى فقط، حدّد بداية النص وتوقّف عند أول مسافة.

تلتقط الصيغة أدناه المحارف الأولى غير الفارغة في A2. بالنسبة إلى John Smith، تعيد John. وتعني [^ ]+ محرفًا واحدًا أو أكثر لا يمثل مسافة.

=REGEXEXTRACT(A2, "^([^ ]+)")

التعامل مع عدم العثور على تطابق

بما أن فشل الاستخراج يُظهر #N/A، فإن سحب الصيغة إلى أسفل عمود يحتوي على بيانات متنوعة قد يملأ ورقة البيانات بالأخطاء.

أحط الاستدعاء بـ IFERROR لتوفير قيمة بديلة واضحة. تعيد الصيغة أدناه الأرقام إذا عثرت عليها، أو سلسلة فارغة إذا لم تجد أي أرقام.

=IFERROR(REGEXEXTRACT(A2, "\d+"), "")

الاستخراج باستخدام البدائل

تعني الشرطة العمودية | أو. وهي تتيح لنمط واحد مطابقة عدة بدائل. يفيد ذلك عندما يبدأ الرمز ببادئات مختلفة.

تستخرج الصيغة أدناه كلمة الحالة الموجودة في A2، سواء كانت OPEN أو CLOSED أو HOLD. وتُعيد أول كلمة تعثر عليها.

=REGEXEXTRACT(A2, "OPEN|CLOSED|HOLD")

استخراج البيانات من عمود كامل دفعة واحدة

تتألق REGEXEXTRACT عند تطبيقها على عمود كامل من البيانات المستوردة. إذ يُستخرج الجزء المطابق من كل صف إلى عمود جديد ومنظم يمكنك فرزه أو تحليله.

تخيّل أن العمود A يحتوي على سلاسل للطلبات مثل Order 4821 - shipped. عند سحب الصيغة أدناه إلى أسفل العمود B، فإنها تستخرج رقم الطلب فقط من كل صف، وتمنحك عمودًا يبدو رقميًا ومنظمًا انطلاقًا من نص المصدر غير المنظم.

=REGEXEXTRACT(A2, "Order (\d+)")

تحقق سريع

تحقق مما تعرفه عن استخراج التطابقات.

مراجعة: استخراج الجزء المطابق

تعلّمت أن REGEXEXTRACT(text, pattern) تعيد أول سلسلة فرعية مطابقة في Google Sheets. أهم النقاط:

  • تكون النتيجة دائمًا نصًا؛ استخدم VALUE لتحويلها إلى أرقام
  • تعيد مجموعات الالتقاط الموجودة بين قوسين الجزء الداخلي فقط
  • يؤدي عدم العثور على تطابق إلى #N/A، لذا استخدم IFERROR للتعامل معه
  • تتيح | لنمط واحد مطابقة عدة بدائل

ستتجاوز في الخطوة التالية قراءة النص، وتبدأ بإعادة كتابته مباشرة باستخدام REGEXREPLACE.

الأسئلة الشائعة

هل درس «استخراج الأنماط باستخدام REGEXEXTRACT» مجاني؟

نعم — نص درس «استخراج الأنماط باستخدام REGEXEXTRACT» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة Excel Formulas Academy، انتقل إلى CoddyKit PRO. تتضمن دورة Excel Formulas Academy 4 دروس في المجموع.

ماذا ستتعلم في «استخراج الأنماط باستخدام REGEXEXTRACT»؟

استخراج الجزء من سلسلة نصية الذي يطابق نمطًا تتمرن على Excel Formulas Academy مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.

هل أحتاج إلى خبرة سابقة لأبدأ Excel Formulas Academy؟

لا تُشترط خبرة سابقة. Excel Formulas Academy على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 2 من أصل 4.

كم من الوقت يستغرق درس «استخراج الأنماط باستخدام REGEXEXTRACT»؟

معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.

هل يمكنني كتابة وتشغيل أكواد في درس Excel Formulas Academy هذا؟

نعم. كل درس في Excel Formulas Academy يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.

جميع الدروس في هذه الدورة

  1. اختبار الأنماط باستخدام REGEXMATCH
  2. استخراج الأنماط باستخدام REGEXEXTRACT
  3. استبدال الأنماط باستخدام REGEXREPLACE
  4. تقسيم البيانات الفوضوية وتنظيفها
← العودة إلى Excel Formulas Academy