我有以下测试字符串。使用RegEx
我想提取200
和381
。
2010-08-12 00:00:01 69.143.116.98 - W3SVC106 STREAM 207.22.66.152 80 GET /includes/scripts.js - 200 0 2258 381 94 HTTP / 1.1 www.mercymed.com Mozilla / 4.0 +(兼容+ MSIE + 7.0 +的Windows NT + 6.0 + + WOW64 + GoogleT5 + SLCC1; + NET + CLR 2.0.50727 + + +媒体中心+ PC + 5.0; + NET + CLR + 3.5.30729 ; +。NET + CLR + 3.0.30618; +。NET4.0C) - http://www.mercymed.com/
我使用了以下模式,但没有运气。
(?<=\s)[0-9]{3}
任何帮助?
答案 0 :(得分:2)
答案 1 :(得分:1)
@Roman是正确的,只是微小的修正 -
1 我希望第一个数字似乎是响应代码,所以它可以肯定是3位数。 第二个数字可能超过3位数 - (\ d {3})。+(\ d +)\ d + HTTP
2 。+贪婪我们应该追加?消除它的贪婪行为
正则表达式应该是 - (\ d {3})。+? (\ d +)\ d + HTTP
答案 2 :(得分:1)