日期:2014-05-17  浏览次数:20716 次

各位大侠,学生求教如何使用正则表达式提取指定内容的代码,谢谢大家啦!
各位大侠,你们好,学生有一个正则表达式的问题想请教一下,如何只提取提取下面日志中主机的IP地址(192.168.1.107),和端口号后面的所有内容(HTTP/1.1 NOTIFY /upnp/eventing/brewtzoaao - - Connection_Abandoned_By_AppPool -)的代码?
谢谢大家啦~~

#Software: Microsoft HTTP API 1.0
#Version: 1.0
#Date: 2012-05-24 02:23:32
#Fields: date time c-ip c-port s-ip s-port cs-version cs-method cs-uri sc-status s-siteid s-reason s-queuename
2012-05-24 02:23:32 192.168.1.1 4283 192.168.1.107 2869 HTTP/1.1 NOTIFY /upnp/eventing/brewtzoaao - - Connection_Abandoned_By_AppPool -

------解决方案--------------------
\d+.\d+.\d+.\d+
------解决方案--------------------
  string str = File.ReadAllText("D:\\1.txt", Encoding.Default);
            str = Regex.Match(str, @"(?is)(?<=(((25[0-5]
------解决方案--------------------
2[0-4]\d
------解决方案--------------------
((1\d{2})
------解决方案--------------------
([1-9]?\d)))\.){3}(25[0-5]
------解决方案--------------------
2[0-4]\d
------解决方案--------------------
((1\d{2})
------解决方案--------------------
([1-9]?\d))))\s+\d+\s+)(?=[a-z]).*").Value;
            Console.WriteLine(str);

------解决方案--------------------
改一下2L
(?is)\d{4}-\d{1,2}-\d{1,2}\s*\d{1,2}:\d{1,2}:\d{1,2}\s*((25[0-5]
------解决方案--------------------
2[0-4]\d
------解决方案--------------------
((1\d{2})
------解决方案--------------------
([1-9]?\d)))\.){3}(25[0-5]
------解决方案--------------------
2[0-4]\d
------解决方案--------------------
((1\d{2})
------解决方案--------------------
([1-9]?\d)))\s+\d+\s+)(?=[a-z]).*