#pragma warning(disable : 4996)
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
char* find_str(char sub_s[], char str[]) {
char* s;
int i;
s = str;
while (*s) {
/*先在str中查找子串sub_s第一个字符为止*/
while (*s && *s != sub_s[0]) s++;
/*然后查看从这个字符起是否包含完整的子串*/
i = 0;
while (s[i] && sub_s[i] && s[i] == sub_s[i])
i++;
if (sub_s[i] == '\0')
break;
else
s++;
}
return s;
}
int main()
{
char str[] = "Asia\\/Shanghai,server_time:1643418869,location:[33.06,107.03],result{realtime:{status:ok,temperature:[11112.5]\"humidity:[0.95]";
char sub_s[] = "temperature";
char *part = find_str(sub_s, str);//截取从temperature之后的所有内容
int l=0;
int i=0;
while (sub_s[i++]) l++;//获取sub_s的长度
char* p = &part[l + 1];//p直接指向[12.5] 的[位置
char ch[20] = {0};
i = 0;
while (*(++p) != ']')
ch[i++] = *p;
ch[i] = '\0';
printf("%s\n",ch);
return 0;
}
提取字符串里特征码后的数值
最新推荐文章于 2022-12-26 21:30:44 发布