درآوردن رشته و یک عدد از داخل رشته دیگر - هفت خط کد انجمن پرسش و پاسخ برنامه نویسی

درآوردن رشته و یک عدد از داخل رشته دیگر

+1 امتیاز
یک رشته داریم به مثال چنین رشته ای "add string hju and number 1379" چگونه می توان از این رشته hju را در آورد و داخل رشته ای دیگر ریخت و عدد 1379 را در آورد و داخل متغیر int
سوال شده فروردین 11, 1399  بوسیله ی فرید فتوحی (امتیاز 26)   1 5 8

1 پاسخ

0 امتیاز

سلام

بهترین و حرفه ای ترین راه استفاده از Regular expression هستش برای مثال قطعه کد زیر را میزارم. 

https://docs.microsoft.com/en-us/cpp/standard-library/regex-functions?view=vs-2019

string Mytext = "add string hju and number 1379";

regex re(R"(\d+)"); //====>>> از یک تا بی نهایت عدد پشت سر هم
 
/// آیا عبارت مورد جستجو در رشته است اگر وجود دارد استخراج شود
std::smatch sm;
if (regex_search(Mytext, sm, re))
{
for (size_t i = 0; i < sm.size(); i++)
{
cout << sm.str(i)<<endl;
cout << "-------" << endl;
}
}
 
/// عبارت مورد نظر در کل رشته جستجو شده و یک آرایه از ان برگشت داده میشود
re = R"(\w+)"; //=====>>> کلمات استخراج میشود
std::sregex_iterator next(Mytext.begin(), Mytext.end(), re);
std::sregex_iterator end;
while (next != end) {
std::smatch match = *next;
std::cout << match.str() << "\n";
next++;
}

 

پاسخ داده شده فروردین 15, 1399 بوسیله ی m.badami (امتیاز 45)   1
دوباره نشان داده شد فروردین 15, 1399 بوسیله ی m.badami
...