Avatar ·

كيفية تقسيم سلسلة نصية إلى رموز (كلمات) في C++؟ دليل مفصل

مرحباً بالجميع! لقد بدأت للتو في تعلم C++ وواجهت مشكلة تبدو بسيطة، لكنني لا أستطيع إيجاد حل مناسب.\n\nأحتاج إلى تقسيم سلسلة نصية إلى كلمات منفصلة (رموز). على سبيل المثال، لدي السلسلة "Hello, world! This is C++". أريد الحصول على مصفوفة أو vector: ["Hello,", "world!", "This", "is", "C++"]. في Python كنت سأكتب ببساطة `"Hello, world! This is C++".split()` وسيكون كل شيء جاهزاً. لكن في C++ لا أرى مثل هذه الطريقة البسيطة.\n\nأعلم أن هناك `std::string`، وهناك `std::stringstream`، لكن كيف يمكن استخراج الكلمات المنفردة منهما؟ جربت كتابة شيء مثل:\n\n```cpp\n#include \n#include \n#include \n#include \n\nint main() {\n std::string str = "Hello, world! This is C++";\n std::stringstream ss(str);\n std::string word\n