检查字符串中的数字
Check string for numbers
我正在尝试编写一个函数来检查字符串是否包含数字,正数或负数。
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。
检查主角是否-
(或+
,或者你接受的任何其他字符),如果是,请将其删除,然后使用您当前的测试来检查剩余的内容。
更全面的解决方案是使用正则表达式。
相关文章:
- 生成随机长度的数字字符串
- 如何在c ++中将大数字字符串转换为整数?
- 将非数字字符串存储为二进制整数
- Flex 词法分析器规则,对包含连字符和斜杠的字母数字字符串具有积极的前瞻断言
- 如何在C++中将数字字符串拆分为数组
- 总结数字字符串输入的最佳方法
- 如何将输入的数字字符串转换为 int 数组
- 如何获得两个数字字符串的总和-C
- 使用 C++ 替换 txt 文件中的文本数字字符串
- 如何有效地将数字字符串值分配给整数
- String Stream in C++ 解析单词和数字字符串
- c++将大型数字字符串映射到数字字符串范围
- 获取用数字字符串表示的树中的所有直接父级/子级
- 如何从 char 数组中提取数字字符串成员
- 比较两个字母数字字符串
- 有没有一种方法可以设置浮点变量=某个数字*字符串中的变量
- 使用矢量对字母数字字符串进行排序
- 正在分析未知类型的数字字符串
- 如何在c++中从一个科学数字字符串中修剪后面的零
- 无法将字符串数组中的数字字符串转换为浮点值