Использование алгоритма remove_copy_if
: -
string text,result;
std::remove_copy_if(text.begin(), text.end(),
std::back_inserter(result), //Store output
std::ptr_fun(&std::ispunct)
);
Из того, что я понял из ваших мелких деталей, я понял, что не рекомендуется передавать пользовательский интерфейс в асинхронную задачу. То, что вы можете сделать, это выполнить фоновую операцию doInBackground()
вашего Async, после завершения операции вернуть обработанные данные, и в onPostExecute()
вы можете обновить представление с переданными данными.
Я думаю, что вам может не хватать информации об Asyncs, так почему бы не посмотреть внимательно на этот пост .
Вы также можете создать интерфейс и передать результат этому интерфейсу после завершения работы. В двух словах, прочитайте пост, чтобы понять, как работают асинхронные вычисления.