日期:2014-05-20  浏览次数:20700 次

对这段正则表达式的疑惑
"href=\"?(.*?)(\" ¦> ¦\\s+)" 
是提取html里的网页的,但是分组有点奇怪啊!
如果我打group() 和group(0)都是一样的就是整个连接href="getfile.asp?id=432432423"
如果我打group(1)第二组就是getfile.asp?id=432432423
为什么第二组href =和""这个都没有了?

------解决方案--------------------
"href=\"?(.*?)(\"|>|\\s+)"

不奇怪啊

group(0) 表示表达式所匹配的整个串
group(1) 表示表达式所匹配的第一组
group(2) 表示表达式所匹配的第二组

……

组号从左边开始看看左括号的序号是几,那么被这对括号括起来的就是第几组。

数括号时不能将 (? 即后跟问号的括号算进去。

不知道说明白没有?