【举例】要将mac地址00:50:56:a3:4b:2d去除‘:’,并将小写字母转换为大写字母。
去除“:”可以用
m_mac.erase( std::remove( m_mac.begin(), m_mac.end(), ':'), m_mac.end() );
用到了remove算法string::erase()。 remove()返回的字符串没有被删除字符的下一个位置,“005056a34b2d*****",即第一个*的位置。 然后erase将剩下的部分从字符串中擦除。
小写转为大写有两种方法:
std::transform( m_mac.begin(), m_mac.end(), m_mac.begin(), ::toupper )
boost::to_upper( m_mac );
https://www.cnblogs.com/7z7chn/p/6341453.html
https://stackoverflow.com/questions/735204/convert-a-string-in-c-to-upper-case