c/c++ 에서 다음 문자열에서
ABCDE_FGHI_Ver1.2.34.bin
각 각 다음을 추출하고 싶은데요. ABCDE FGHI 1.2.34
ABCDE와 FGHI는 strtok(pOriStr, "_") 을 써서 추출했는데... 1.2.34를 추출하기가 까다로워서 질문드립니다.
1.2.34를 추출하는 효과적인 방법좀 알려주세요
한 글자씩 isdigit() || ... 하는 방법도 있겠고... 좀 더 깔끔하게 구현하자면 strpbrk()와 strspn() 정도면 되지 않을까요?
isdigit() || ...
$PWD `date`
항상 Ver 다음에 오나요?
피할 수 있을때 즐겨라! http://melotopia.net/b
네 Ver1.2.3 일수도 있고 Ver1.4.55 일수도 있고
마지막 숫자 자릿수는 변경되도 형식은 위와 같습니다.
Ver과 가장 마지막에 등장하는 .을 기준으로 그 사이를 읽어오면 될 것 같은데요
char *w[5]; int n = sscanf("ABCDE_FGHI_Ver1.2.34.bin", "%a[^_]_%a[^_]_Ver%a[0-9].%a[0-9].%a[0-9]", &w[0], &w[1], &w[2], &w[3], &w[4]);
가 제일 간단할 것 같은데요.
텍스트 포맷에 대한 자세한 정보
<code>
<blockcode>
<apache>
<applescript>
<autoconf>
<awk>
<bash>
<c>
<cpp>
<css>
<diff>
<drupal5>
<drupal6>
<gdb>
<html>
<html5>
<java>
<javascript>
<ldif>
<lua>
<make>
<mysql>
<perl>
<perl6>
<php>
<pgsql>
<proftpd>
<python>
<reg>
<spec>
<ruby>
<foo>
[foo]
한 글자씩 isdigit() || ... 하는 방법도
한 글자씩
isdigit() || ...
하는 방법도 있겠고... 좀 더 깔끔하게 구현하자면 strpbrk()와 strspn() 정도면 되지 않을까요?$PWD `date`
항상 Ver 다음에 오나요?
항상 Ver 다음에 오나요?
피할 수 있을때 즐겨라! http://melotopia.net/b
네 Ver1.2.3 일수도 있고 Ver1.4.55
네 Ver1.2.3 일수도 있고
Ver1.4.55 일수도 있고
마지막 숫자 자릿수는 변경되도 형식은 위와 같습니다.
Ver과 가장 마지막에 등장하는 .을 기준으로 그
Ver과 가장 마지막에 등장하는 .을 기준으로 그 사이를 읽어오면 될 것 같은데요
피할 수 있을때 즐겨라! http://melotopia.net/b
gcc 인 경우에는
char *w[5];
int n = sscanf("ABCDE_FGHI_Ver1.2.34.bin", "%a[^_]_%a[^_]_Ver%a[0-9].%a[0-9].%a[0-9]", &w[0], &w[1], &w[2], &w[3], &w[4]);
가 제일 간단할 것 같은데요.
댓글 달기