1
我有在分裂C.使用sscanf()
字符串問題拆分AT命令字符串
我
char sms[]="AT+CMGR=7+CMGR: \"REC UNREAD\",\"+213552830677\",\"\",\"14/11/29,21:20:36+04\"123456Cn50555202555";
,我想
char number[15] = "+213552830677";
char code[6] = "123456 ";
char cmd[2] = "Cn";
char arg[20] = "50555202555";
我用這個代碼做分割並打印結果:
sscanf(sms,"AT+CMGR=8+CMGR: \"REC UNREAD\",\"+%12s\",\"\",\"14/11/29,21:20:36+04\"%6s%2s%s",tmp ,number ,code ,cmd ,arg);
printf("Temp: %s\r\nNumber: %s\r\nCode: %s\r\nCommand: %s\r\nArgument: %s\r\n",tmp ,number ,code ,cmd ,arg);
爲什麼你不顯示正則表達式呢? – unwind 2014-12-05 14:42:52
sscanf(sms,「AT + CMGR = 8 + CMGR:\」REC UNREAD \「,\」+%12s \「,\」\「,\」14/11/29,21:20:36 + 04 \ 「%6s%2s%s」,tmp,number,code,cmd,arg); printf(「Temp:%s \ r \ nNumber:%s \ r \ nCode:%s \ r \ nCommand:%s \ r \ nArgument:%s \ r \ n」,tmp,number,code,cmd, ARG); – 2014-12-05 14:50:05
這絕對不是一個正則表達式。 :|您應該將它編輯成問題,刪除RE的提及,並讓我們知道'sscanf()'解決方案的問題是什麼。 – unwind 2014-12-05 14:53:48