دوال السلاسل النصية - الجزء الثاني
جزء من قسم Fundamentals في رحلة C++ على Coddy — الدرس 71 من 74.
إليك المزيد من الدوال المفيدة للسلاسل النصية:
- erase(pos, len): يقوم بإزالة عدد len من الأحرف بدءاً من الموقع pos من السلسلة النصية الحالية.
- find(str): يعيد موضع أول ظهور لـ str في السلسلة النصية الحالية. يعيد كائناً يمكن مقارنته بـ -1 إذا لم يتم العثور عليه.
- clear(): يزيل جميع الأحرف من السلسلة النصية، مما يجعلها فارغة.
- empty(): يعيد true إذا كانت السلسلة فارغة، و false بخلاف ذلك.
على سبيل المثال باستخدام السلسلة النصية التالية:
std::string str = "Hello, World!";int pos = str.find("World");
// الناتج: pos = 7 (الموقع الذي تبدأ منه "World")str.erase(5, 2);
// الناتج: "HelloWorld!"str.clear();
// المخرجات: "" (سلسلة نصية فارغة)bool isEmpty = str.empty();
// يعيد true إذا كانت str لا تحتوي على أحرفالتحدي
سهلقم بإنشاء دالة باسم stringSearchOperations تأخذ سلسلة نصية كمدخل وتنفذ العمليات التالية باستخدام دوال السلسلة النصية (string functions):
- البحث عن موضع أول مسافة في السلسلة النصية وطباعته.
- مسح 4 أحرف بدءاً من الموضع 5.
- التحقق مما إذا كانت السلسلة النصية تحتوي على الكلمة "You" وطباعة "Found" أو "Not Found".
- مسح السلسلة النصية بالكامل والتحقق مما إذا كانت فارغة.
- طباعة النتائج بعد كل عملية.
استخدم التنسيق التالي:
Space Found At: [Position of space]
After Erase: [String after erasing]
Contains You: [Found/Not Found]
Is Empty: [true/false]ورقة مرجعية
دوال السلاسل النصية المفيدة في ++C:
erase(pos, len): يزيل عدد len من الأحرف بدءاً من الموقع posfind(str): يعيد موقع أول ظهور لـ str (يعيد -1 إذا لم يتم العثور عليه)clear(): يزيل جميع الأحرف من السلسلة النصيةempty(): يعيد true إذا كانت السلسلة النصية فارغة، و false خلاف ذلك
std::string str = "Hello, World!";
int pos = str.find("World");
// pos = 7 (الموقع الذي تبدأ منه "World")
str.erase(5, 2);
// النتيجة: "HelloWorld!"
str.clear();
// النتيجة: "" (سلسلة نصية فارغة)
bool isEmpty = str.empty();
// يعيد true إذا كانت str لا تحتوي على أحرفجرّب بنفسك
#include <iostream>
#include <string>
void stringSearchOperations(std::string str) {
// البحث عن أول مسافة
// مسح 4 أحرف من الموضع 5
// التحقق مما إذا كانت تحتوي على "You"
// مسح السلسلة والتحقق مما إذا كانت فارغة
}
int main() {
std::string str;
std::getline(std::cin, str);
stringSearchOperations(str);
return 0;
}يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
جميع دروس Fundamentals
4المعاملات - الجزء الأول
المعاملات الحسابيةمعامل باقي القسمة (Modulo)الزيادة والنقصانالزيادة والنقصان اللاحقةاختصارات العمليات الحسابيةمعاملات المقارنةمقارنة النصوص3المتغيرات - الجزء الثاني
التصريح عن النوعقواعد التسميةمراجعة - تهيئة المتغيراتتحويل الأنواع - الجزء الأولتحويل الأنواع - الجزء الثاني9حلقات التكرار
حلقة For - الجزء الأولحلقة Whileحلقة Do WhileBreakContinueحلقة For - الجزء الثانيالحلقات المتداخلةالحلقات اللانهائيةمراجعة - Dynamic Input12السلاسل النصية
سلاسل C النصية - الجزء الأولسلاسل C النصية - الجزء الثانيعمليات السلاسل النصيةدوال السلاسل النصية - الجزء الأولدوال السلاسل النصية - الجزء الثاني