샘플 코드
string streamName = "ce2b87e233cb_wlHByc?token=abcd&expiration=1234";
char strStreamName[64] = {0};
char strToken[128] = {0};
char strExpiration[64] = {0};
sscanf(STR(streamName), "%63[^?]?token=%127[^&]&expiration=%63[^&]", strStreamName, strToken, strExpiration);
설명
%63[^?] : ^가 나오기 전까지의 문자열 (최대 64자)
%127[^&] : &가 나오기 전까지의 문자열 (최대 128자)
%63[^&] : &가 나오기 전까지의 문자열 (최대 63자)
주의
- token의 길이가 127자를 초과하면 expiration이 파싱되지 않는다.
- 파라미터 순서가 바뀌면 파싱되지 않는다.