البرمجة

استخدام تعبيرات القوالب في Ruby

عند العمل على تغيير أجزاء معينة من الكلمات في جملة بلغة Ruby باستخدام الدالة gsub، يمكن أن يكون التحدي في التفريق بين الأجزاء المطلوب تغييرها والأجزاء الأخرى من الكلمة. على سبيل المثال، إذا أردت تحويل “Car” إلى “cah”، فإن استخدام الشرط include? لن يكون كافياً، حيث إنه سيؤثر على جميع الحروف “a” في الكلمة “MArthA”، مما ليس هو المطلوب.

لتجاوز هذا التحدي، يمكن استخدام تعبيرات القوالب (Regular Expressions) لتحديد بشكل أكثر دقة الأماكن التي تريد تغييرها في الكلمة. على سبيل المثال، يمكنك استخدام gsub مع تعبيرات القوالب لتحويل “Car” إلى “cah” بالشكل التالي:

ruby
user_input.gsub!(/\bCar\b/, "cah")

هنا، \b تعني حدود الكلمة، لذا فإن الكلمة “Car” ستستبدل فقط إذا كانت كلمة كاملة في الجملة، ولن تتأثر “Car” في “MArthA”.

بالنسبة لتحويل “Martha” إلى “Marther”، يمكن استخدام تعبيرات القوالب لاستهداف “er” فقط إذا كانت في نهاية الكلمة، مثل هذا:

ruby
user_input.gsub!(/er\b/, "her")

هنا، \b تحدد حدود الكلمة، لذا فإن “er” ستتأثر فقط إذا كانت في نهاية الكلمة، وبالتالي لن تؤثر على “er” في “MArthA”.

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

المزيد من المعلومات

بالإضافة إلى الأمثلة المذكورة أعلاه، يمكن استخدام القدرات القوية لتعبيرات القوالب في Ruby لتحقيق الاستبدال بطرق متنوعة ومرنة. فمثلا، إذا كنت ترغب في تغيير “Car” إلى “cah” على الرغم من تواجدها في أي مكان في النص، يمكنك استخدام تعبير القالب التالي بدون الحاجة لحدود الكلمة:

ruby
user_input.gsub!("Car", "cah")

هذا التعبير سيؤثر على كل حالة لـ “Car” في النص، بغض النظر عن موضعها في الجملة.

وإذا كنت ترغب في استبدال جميع الحروف “a” بحرف آخر، مثلا “e”، يمكن استخدام الدالة gsub مع تعبير القالب المناسب:

ruby
user_input.gsub!("a", "e")

هذا التعبير سيستبدل جميع حالات الحرف “a” بحرف “e” في النص.

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

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

مقالات ذات صلة

زر الذهاب إلى الأعلى
إغلاق

أنت تستخدم إضافة Adblock

يرجى تعطيل مانع الإعلانات حيث أن موقعنا غير مزعج ولا بأس من عرض الأعلانات لك فهي تعتبر كمصدر دخل لنا و دعم مقدم منك لنا لنستمر في تقديم المحتوى المناسب و المفيد لك فلا تبخل بدعمنا عزيزي الزائر