دالة Chomp
جزء من قسم الأساسيات في رحلة Ruby على Coddy — الدرس 30 من 88.
في الدرس السابق، رأيت أن gets يتضمن حرف السطر الجديد عندما يضغط المستخدم على Enter. تقوم طريقة chomp بإزالة حرف السطر الجديد اللاحق من السلسلة النصية.
name = gets.chomp
puts "Hello, #{name}!"إذا قام المستخدم بكتابة "Alice"، فإن المخرجات الآن نظيفة:
Hello, Alice!بدون chomp، سيكون هناك سطر فارغ غير مرغوب فيه قبل علامة التعجب. يمكنك ربط chomp مباشرة بـ gets كما هو موضح أعلاه، وهو النمط الأكثر شيوعاً الذي ستراه في برامج Ruby.
دعونا نتحقق من الفرق باستخدام p:
with_newline = gets
without_newline = gets.chomp
p with_newline # "Ruby\n"
p without_newline # "Ruby"تقوم الطريقة chomp بإزالة السطر الجديد في النهاية فقط. ولا تؤثر على أي أحرف أخرى في السلسلة النصية. من الآن فصاعداً، ستحتاج عادةً إلى استخدام gets.chomp كلما قمت بقراءة مدخلات المستخدم.
التحدي
سهلاقرأ اسم مدينة من المستخدم باستخدام gets.chomp وقم بتخزينه في متغير يسمى city.
ثم استخدم إدراج السلسلة النصية (string interpolation) مع puts لإخراج رسالة ترحيب بالتنسيق التالي:
Welcome to [city]!على سبيل المثال، إذا كان الإدخال هو Tokyo، يجب أن يكون المخرج:
Welcome to Tokyo!يجب أن تظهر علامة التعجب مباشرة بعد اسم المدينة دون مسافات إضافية أو أسطر فارغة.
ورقة مرجعية
تزيل الطريقة chomp حرف السطر الجديد الزائد من نهاية السلسلة النصية. هذا أمر ضروري عند قراءة مدخلات المستخدم باستخدام gets، والتي تتضمن السطر الجديد عندما يضغط المستخدم على مفتاح Enter.
قم بربط chomp مباشرة بـ gets:
name = gets.chomp
puts "Hello, #{name}!"المقارنة مع وبدون chomp:
with_newline = gets # "Ruby\n"
without_newline = gets.chomp # "Ruby"تقوم الطريقة chomp فقط بإزالة السطر الجديد في النهاية ولا تؤثر على الأحرف الأخرى في السلسلة النصية.
جرّب بنفسك
# قراءة اسم المدينة من المستخدم
city = gets.chomp
# TODO: اكتب كودك أدناه لإخراج رسالة الترحيب باستخدام استيفاء السلسلة (string interpolation)يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
جميع دروس الأساسيات
4المعاملات - الجزء الثاني
المعاملات المنطقية - الجزء الأولالمعاملات المنطقية - الجزء الثانيمراجعة - المنطق البسيطالمعاملات المنطقية - الجزء الثالثالمعاملات المنطقية - الجزء الرابع7حاسبة تقسيم الفاتورة
رسالة الترحيبالحصول على مدخلات المستخدم2المتغيرات وأنواع البيانات
الأرقام والمتغيراتنوع البيانات Stringنوع البيانات Booleanنوع البيانات Symbolالتحقق من أنواع البياناتقواعد التسميةملخص - إنشاء المتغيرات8الحلقات التكرارية
حلقة For مع النطاقاتحلقة WhileBreakNextمراجعة - المضروب (Factorial)حلقة Timesحلقة Untilالحلقات المتداخلةمراجعة - الإدخال الديناميكي (Dynamic Input)3المعاملات - الجزء الأول
المعاملات الحسابيةمعامل باقي القسمةاختصارات العمليات الحسابيةمراجعة - العمليات الرياضية البسيطةمعاملات المقارنة6أساسيات الإدخال والإخراج
الإخراج باستخدام putsالإخراج باستخدام print و pالإخراج باستخدام المتغيراتالإدخال باستخدام getsدالة Chompتحويل أنواع البياناتمراجعة - حاسبة العمرمراجعة - صح أم خطأ