羡慕的代码我测试过了,问题出在\s-\s-\s上,但是不知道为什么错啦....求指教!
[code="java"]
private String testStr = "58.61.164.141 – - [22/Feb/2010:09:51:46 +0800] “GET / HTTP/1.1″ 206 6326 ” ";
private String regex="([0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3})\s-\s-\s\[([^\]]+)\]";[/code]
关于正则表达式空格的问题.
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
4条回答 默认 最新
- beneo 2010-11-22 10:20关注
[quote]
58.61.164.141 – - [22/Feb/2010:09:51:46 +0800] “GET / HTTP/1.1″ 206 6326 ”
[/quote]你看到你给出的字符串么??中间那个“——”,有长有短,你看看“GET”前面的引号,那是中文的引号
你把所有的中文字符去掉,然后换成英文字符试试,下面是我把你的testStr改了以后的测试
[code="java"]
String testStr = "58.61.164.141 - - [22/Feb/2010:09:51:46 +0800] \"GET / HTTP/1.1\" 206 6326";
String regex = "([0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3})\s-\s-\s\[([^\]]+)\]";Pattern pattern = Pattern.compile(regex); Matcher matcher = pattern.matcher(testStr); if(matcher.find()) { System.out.println(matcher.group(1)); System.out.println(matcher.group(2)); }
[/code]
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥15 数学建模招标中位数问题
- ¥15 phython路径名过长报错 不知道什么问题
- ¥15 深度学习中模型转换该怎么实现
- ¥15 HLs设计手写数字识别程序编译通不过
- ¥15 Stata外部命令安装问题求帮助!
- ¥15 从键盘随机输入A-H中的一串字符串,用七段数码管方法进行绘制。提交代码及运行截图。
- ¥15 TYPCE母转母,插入认方向
- ¥15 如何用python向钉钉机器人发送可以放大的图片?
- ¥15 matlab(相关搜索:紧聚焦)
- ¥15 基于51单片机的厨房煤气泄露检测报警系统设计