"إذا أراد العامل أن يؤدي عمله بشكل جيد، فعليه أولاً أن يشحذ أدواته." - كونفوشيوس، "مختارات كونفوشيوس. لو لينجونج"
الصفحة الأمامية > برمجة > C# التعبيرات العادية: نصائح لمطابقة الكلمات الكاملة بالضبط

C# التعبيرات العادية: نصائح لمطابقة الكلمات الكاملة بالضبط

نشر في 2025-03-13
تصفح:761

How to Match Whole Words Only Using Regular Expressions in C#?

تطابق الكلمة بأكملها باستخدام التعبير العادي في C#

عند استخدام تعبيرات منتظمة للعثور على التطابقات في سلسلة ، من الأهمية بمكان التأكد من مطابقة الكلمة بأكملها فقط. فكر في مهمة مطابقة كلمات محددة مثل "الأحذية" و "القميص" و "السراويل" في سلاسل المحتوى.

في البداية ، قد يعتقد المرء أن التعبير العادي التالي كافي:

Regex.Match(content, keywords   "\\s ", RegexOptions.Singleline | RegexOptions.IgnoreCase)

ومع ذلك ، فإن هذا التعبير العادي يطابق كلمات مثل "المشاركين" التي تحتوي على الكلمة المطلوبة "سراويل" ، لكنها ليست كلمات كاملة بأنفسهم.

الحل: حدود الكلمات

]]

لحل هذه المشكلة ، يجب تضمين حرف الحدود (\ b) في التعبير العادي. حدود الكلمات هي أحرف غير مرئية تضع علامة على بداية ونهاية الكلمة. باستخدام حدود الكلمات ، تتطابق التعبيرات العادية الآن مع الكلمات الكاملة فقط:

Regex.Match(content, @"\b(shoes|shirt|pants)\b");

يبحث سلسلة تعبير منتظمة جديدة عن أي كلمة تبدأ وتنتهي بحدود الكلمات. هذا يضمن أنه تم العثور على المطابقة الدقيقة للكلمة المحددة فقط. تعني حرف "@" إضافي في بداية السلسلة أنه ينبغي التعامل مع السلسلة كسلسلة كلمة على حدة ، مما يمنع تفسير الأحرف الخاصة على أنها metacharacters.

أحدث البرنامج التعليمي أكثر>

تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.

Copyright© 2022 湘ICP备2022001581号-3