C語言處理字符串

1. strtok

函數原型:html

  char * strtok(char *str, const char * delim);正則表達式

注意點:數組

  兩個入參必須爲字符串數組;安全

  第一次調用要傳str, delim,後面調用要傳NULL, delim,傳入其它的str後從新被初始化,內部是一個static的指針;函數

  與之相對的一個:strtok_r();.net

2. sprintf、sscanf

函數原型:指針

  int sprintf(char *str, const char *format, ...);orm

  int sscanf(const char *str, const char *format);htm

  用於版本號、IP等的匹配,%後面的能夠用正則表達式,靈活性較強,要處理簡單字符串的時候能夠考慮替代使用regex.h庫。blog

char buf[16]="10.150.88.34";
char a[4]="192",b[4]="168",c[4]="0",d[4]="1";

//sprintf(buf, "%s.%s.%s.%s", a,b,c,d);
//printf("%s\n", buf);

sscanf(buf, "%[0-9].%[0-9].%[0-9].%[0-9]", a,b,c,d);
printf("%s,%s,%s,%s\n", a,b,c,d);

 更深刻細緻的介紹:

  https://blog.csdn.net/huangxy10/article/details/8117870

  https://www.cnblogs.com/rere-whh/p/7608446.html

  能夠使用更安全的stringstream,與getline連用:https://blog.csdn.net/sunshineacm/article/details/78068987

相關文章
相關標籤/搜索