36 lines
1.1 KiB
C++
36 lines
1.1 KiB
C++
/*
|
|
File: StringHelper.h
|
|
Description: Provides utility functions for extracting numeric values from strings.
|
|
Useful for parsing IDs, codes, or mixed alphanumeric inputs where
|
|
digits need to be isolated and converted into integers.
|
|
Author: Trenser
|
|
Date: 22-May-2026
|
|
*/
|
|
|
|
#include <cctype>
|
|
#include <string>
|
|
|
|
namespace util
|
|
{
|
|
/*
|
|
Function: extractNumber
|
|
Description: Extracts all digits from the given string and converts them into an integer.
|
|
Ignores non-digit characters. For example, "abc123xyz" returns 123.
|
|
Parameters:
|
|
- input: const std::string&, the input string containing digits and/or other characters
|
|
Returns:
|
|
- int: The integer value formed by concatenating all digits in the string
|
|
*/
|
|
inline int extractNumber(const std::string& input)
|
|
{
|
|
int result = 0;
|
|
for (char character : input)
|
|
{
|
|
if (std::isdigit(static_cast<unsigned char>(character)))
|
|
{
|
|
result = result * 10 + (character - '0');
|
|
}
|
|
}
|
|
return result;
|
|
}
|
|
} |