2011-12-09 10 views
1

gcc 4.6.2 c89문자열에서 정규식 IP 주소

문자열에서 IP 주소를 추출하는 데 사용할 수있는 표준 정규 표현식이 있습니까?

정규식을 사용하여 sscanf를 사용하여 아래의 예제 문자열에서 IP를 가져 오는 것에 대해 생각하고 있습니다.

v=0 o=sip_user IN 10230 22472 IP4 NET.CAT.NTBC s=SIP_CALL c=IN IP4 10.10.10.44 m=audio 49152 RTP/AVP 0 a=rtpmap:0 PCMU/8000 

그래서 정규식 따옴표 사이에있을 것입니다 : 어떤 제안에 대한

sscanf(ip_string, "%s", &ip_address); 

많은 감사,

+1

'sscanf()'는 정규식을 취하지 않습니다. –

답변

4
\b(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\b 
+0

안녕하세요. 고마워, 나는 정규식 표현을 보았다. 하지만 제 문제는 어떻게하면 C 언어로 작업 할 수 있습니까? 어떤 표준 C 함수를 삽입합니까? 많은 감사합니다. – ant2009

+0

다음은 C의 regex에 대한 샘플 코드 목록입니다. http://www.peope.net/old/regex.html – Prafulla

1

당신의 OS를 확인

샘플 문자열 regex.h에 대해 정의 된 정규식 라이브러리를 사용하십시오. 예 : linux example