Добавляем функцию для очистки строки от любых символов кроме

алфавита и цифр
This commit is contained in:
2022-10-22 22:49:18 +03:00
parent d2485228eb
commit 728fcb385e

View File

@@ -128,18 +128,18 @@ size_t itemsCount2(String str, const String& separator) {
return cnt; return cnt;
} }
size_t itemsCount(String& str, const char* delim) { // size_t itemsCount(String& str, const char* delim) {
size_t cnt = 0; // size_t cnt = 0;
char* cstr = new char[str.length() + 1]; // char* cstr = new char[str.length() + 1];
strcpy(cstr, str.c_str()); // strcpy(cstr, str.c_str());
char* token; // char* token;
while ((token = strtok_r(cstr, delim, &cstr))) { // while ((token = strtok_r(cstr, delim, &cstr))) {
cnt++; // cnt++;
// printf("%s\n", token); // // printf("%s\n", token);
} // }
delete[] cstr; // delete[] cstr;
return cnt; // return cnt;
} // }
char* stringToChar(String& str) { char* stringToChar(String& str) {
char* mychar = new char[str.length() + 1]; char* mychar = new char[str.length() + 1];
@@ -198,3 +198,12 @@ String uint64ToString(uint64_t input, uint8_t base) {
} while (input); } while (input);
return result; return result;
} }
String cleanString(String str) {
String clearStr = "";
const String allowedChars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz01234567890АБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯабвгдеёжзийклмнопрстуфхцчшщъыьэюя.!-+ ";
for (size_t i = 0; i < str.length(); i++) {
if (allowedChars.indexOf(str.charAt(i)) != -1) clearStr += str.charAt(i);
}
return clearStr;
}