检查字符串中的数字

Check string for numbers

本文关键字:数字 字符串 检查      更新时间:2023-10-16

我正在尝试编写一个函数来检查字符串是否包含数字,正数或负数。

getline(cin,line);
    istringstream sin(line);
    while (sin >> ws >> in){
        if(all_of(in.begin(), in.end(), ::isdigit){
        //do something with number
        }

问题是,isdigit() 会将所有负数设置为非数字。还有哪些其他方法可以检查字符串是否包含数字?

样本输入:1 2 -2 ASDF 4。

检查主角是否-(或+,或者你接受的任何其他字符),如果是,请将其删除,然后使用您当前的测试来检查剩余的内容。

更全面的解决方案是使用正则表达式。