1

gcc 4.6.2 c89

Is there any standard regex expression that can be used to extract the IP address from a string.

I am thinking about using sscanf with a regex expression to get the IP from this sample string below.

This is the sample string:

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

So the regex will be in between the quotes:

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

Many thanks for any suggestions,

ant2009
  • 27,094
  • 154
  • 411
  • 609

2 Answers2

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
Bhargav Rao
  • 50,140
  • 28
  • 121
  • 140
Prafulla
  • 1,929
  • 1
  • 17
  • 21
  • Hello. Thanks I did see that regular regex expression. But my problem is how can I get that to work in c? What standard c function do I insert it? Many thanks. – ant2009 Dec 09 '11 at 00:58
1

Check your OS for regex.h and use the defined regular expression library. e.g. linux example

Bort
  • 2,423
  • 14
  • 22