问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

C语言提取字符串中的所有数字

发布网友 发布时间:2022-04-24 18:03

我来回答

5个回答

热心网友 时间:2022-04-10 04:25

#include<stdio.h>
int
main()
{
char
str[1000];//保存读取到的字符串
long
sum=0,data[1000];
int
i=0,top=0;
printf("输入字符串:\n");
scanf("%s",str);
while(str[i]!='\0')//未到字符串末尾
{
if(str[i]>='0'&&str[i]<='9')//如果是数字
sum=sum*10+(str[i]-'0');//连续数字转换为数.
else
if(sum!=0)//保存这个数
{
data[top++]=sum;
sum=0;
}
i++;
}
if(sum!=0)//判断最后一个字符是否是数
data[top++]=sum;
printf("字符串中的数字是:\n");
i=0;
while(i<top)
{
printf("%ld",data[i]);
if(i<top-1)//不打印最后一个逗号
printf(",");
i++;
}
printf("\n");
system("pause");
return
0;
}

热心网友 时间:2022-04-10 05:43

#include <stdio.h>
void main()
{
char str[50];
int i=0; //i是数组下标. gets(str); //输入字符串.while(str[i]) //当数组元素不是字符串结束符时.执行while
{
if(str[i]>='0'&&str[i]<='9') //如果数组元素是数字. 就输出这个元素.
{
putchar(str[i]);
}
else
{
if(str[i-1]>='0'&&str[i-1]<='9') //否则判断前一个元素是不是数字.是的话输出一个空格.
printf(" ");
}
i++;
}
printf("\n");
}

热心网友 时间:2022-04-10 07:18

#include<stdio.h>
void main()
{
char str[10]={'1','a','2','b','3','4','c','\0'};
int i;
for(i=0;str[i]!='\0';i++)
if(str[i]>'0'&&str[i]<'9')
printf("%c\n",str[i]);
}

方法:从字符串第一个字符开始判断,通过for循环一个个的如果是当前字符,也就是str[i]比0大而且比9小,那么它就是数字,然后输出它就可以了。
两点需要注意:
(1)因为定义的是字符数组,所以printf输出的时候需要时%c单个字符的格式;
(2)if判断条件0和9要加单引号调用ASCII码,如果不加单引号就默认是ASCII码为0和9的字符而不是阿拉伯数字。
这个程序用的初始化,如果需要,可以编写用户输入数据的。

热心网友 时间:2022-04-10 09:09

string s = "sdka151221jfhj8js-9";
System.Text.RegularExpressions.Regex regex = new System.Text.RegularExpressions.Regex(@"-?[1-9]\d*");
System.Text.RegularExpressions.MatchCollection matchCollection= regex.Matches(s);

再根据你的业务需求处理matchCollection里的内容

热心网友 时间:2022-04-10 11:17

挨个读取字符,对比0123456789 ,完毕。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
《像素大战》国内什么时候上映? 求像素大战桌面吐血整理资源嘛,高清免费谢谢!! 请问哪位大侠知道全国那个城市出版社最多?说的具体一点,谢谢!_百度知... 老公出轨外遇背叛老婆,老婆要求老公父母给老婆父母道歉怎么办? 绿化黄刺玫去哪里买? ...什么样的人比较需苗木?公司内负责苗木采购的是哪个部门,怎样和他 ... 建筑公司里负责绿化的是什么部门 tcp/ip协议每个层次的功能 oracle数据库启动关闭与数据备份 oracle数据库怎么备份啊 带有莲字的古诗 包含莲字的诗句 玫瑰花粉怎么做面膜加蛋清好还是蛋黄好? C++:如何提取字符串中的汉字,数字!!! 写出两句含莲的诗句? 玫瑰花粉怎样做面膜?有什么功效? 描写莲的诗 什么是玫瑰粉 含有“莲”的诗句又那些??? 如何提取指定字符串中的内容? 荷花粉,玫瑰花粉,茶花粉哪个好 玫瑰花粉面膜怎么做 关于莲的诗词 蜜蜂能采玫瑰花粉受蜜吗 Excel自动提取字符串中汉字、英文与数字的函数 怎么用玫瑰花粉调制面膜? 有关“莲”的诗句有哪些? 如何取出字符串中的汉字 玫瑰花粉对肌肤养颜有多功效? 含有莲的诗句 带有莲花的诗句 急!含“莲”字的诗句 莲是古诗词中常用的意象,请写出含莲的连续两句古诗 含“荷花”的诗句? 中央银行做好信息披露的原因? 急求 商业银行信息披露的重要意义!!! 商业银行信息披露暂行办法的第一章 总则 - 信息提示 现货和期货的区别在哪里? 中国银监会制定发布的《商业银行信息披露暂行办法》是属于部门规章吗? 如何充分履行银行责任,做好信息披露 银行信息披露岗位怎样? 银行信息披露中并表范围是什么意思? 银行个人理财业务中的信息披露环节,包括以下哪些内容 中国商业银行资本充足率(特别是信用风险)的披露信息在哪里公布? 期货与现货之间的区别在哪 期货与现货的区别? 2022药师资格证审核没通过电话申诉 《我与黑大佬的365天》结局是什么? 我和黑帮大佬de365日剧情