C语言-sscanf函数的正则表达式的使用

c语言的函数中sscanf函数对字符串的处理蛮有好处的,提高了效率

format格式:

 {%[*] [width] [{h | l | I64 | L}]type | ' ' | '\t' | '\n' | 非%符号}

序号符号意义
1%格式化
2*跳过
3width读取宽度
4h | l | I64 | L通常h表示单字节size,I表示2字节 size,L表示4字节size(double例外),l64表示8字节size
5type像%d,或者%s

 

 

 

 

 

 

 

程序如下:

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

int main(void) { 
	char  str[128]={0};
	
	//简单赋值
	sscanf("usernaem=admin&pwd=Abc12345","%s",str);
	printf("1 str:%s\n:",str);
	
	//获取指定长度的字符串
	sscanf("usernaem=admin&pwd=Abc12345","%4s",str);
	printf("2 str:%s\n:",str);

	//遇到指定为止的字符串
	sscanf("username=admin&pwd=Abc12345","%[^=]",str);
	printf("3 str:%s\n:",str);
	
	//遇到指定为止的字符串
	sscanf("username=admin&pwd=Abc12345","%*[a-z]%s",str);
	printf("4 str:%s\n",str);
	
    //跳过某些字段
	sscanf("123456abcd","%*d%s",str);
	printf("5 str:%s\n:",str);
	
	//跳过某些字段
	sscanf("username=admin&pwd=Abc12345","%[a-z=]",str);
	printf("6 str::%s\n",str);
	
	//遇到指定为止的字符串
	sscanf("username=admin&pwd=Abc12345","%[^=]",str);
	printf("7 str:%s\n",str);

	return 0;
}

 

参考:

https://www.jb51.net/article/138506.htm

https://www.cnblogs.com/Jimmy1988/p/8900440.html

 

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值