|zyciis| 谁帮解释一下正则 (?<=<td>).*(?=<\/td>) 这里面的?<=?=是什么意思呢 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 一个是边界前断言 一个边界后断言 都是边界断言 意思就是说匹配的部分前面一定是<td>后面也一定是</td> 才去匹配它 (?<= 断言要匹配的文本的前缀(?=exp) 匹配exp前面的位置 (?<=exp) 匹配exp后面的位置 (?<=exp)也叫零宽度正回顾后发断言,它断言自身出现的位置的前面能匹配表达式exp。看看过客的博客 ? <= 表示此处之前的字符必须符合等号后的表达式?=表示此处之后的字符必须符合等号后的表达式譬如 a(?=bb)表明在a后必须是bb,不过bb不在返回的匹配字符串之中. 呵呵,感谢推荐楼主的正则是取<td>和</td>之间的内容,但是楼主给的正则的局限性比较大如果是<td id="test">one line.another line.</td>这样的<td...>中带属性,内容带换行的就不行了或者是同时有多个td标签,“.*”贪婪模式可能会取到不希望的结果可以这样写正则(?is)(?<=<td[^>]*>)(?:(?!</?td\b).)*(?=</td>)至于解释,有时间可以看下我的博客,不过多是基础语法的解释,需要综合起来理解 (exp) 匹配exp,并捕获文本到自动命名的组里 (?<name>exp) 匹配exp,并捕获文本到名称为name的组里,也可以写成(?'name'exp) (?:exp) 匹配exp,不捕获匹配的文本,也不给此分组分配组号 (?=exp) 匹配exp前面的位置 (?<=exp) 匹配exp后面的位置 (?!exp) 匹配后面跟的不是exp的位置 (?<!exp) 匹配前面不是exp的位置 (?#comment) 这种类型的分组不对正则表达式的处理产生任何影响,用于提供注释让人阅读 图片Url指定客户端浏览图片时图片的绝对路径权限问题 水晶报表无法显示数据??急 如何把aspx批量生成为htm静态页? FCKeditor 一个奇怪的图片显示问题 如何用花生壳发布ASP.NET网站? 获取用户控件所在页的路径及页面名称? 讨论:对于如何实现对页面上DataGrid只读与可写的控制 请教一个问题。 100分DataReader问题请教??急啊 如何在父页面关闭子页面 SQL更新语句 Render 的用法
(?=exp) 匹配exp前面的位置
(?<=exp) 匹配exp后面的位置
(?<=exp)也叫零宽度正回顾后发断言,它断言自身出现的位置的前面能匹配表达式exp。看看过客的博客
? <= 表示此处之前的字符必须符合等号后的表达式
?=表示此处之后的字符必须符合等号后的表达式
譬如
a(?=bb)
表明在a后必须是bb,不过bb不在返回的匹配字符串之中.
呵呵,感谢推荐楼主的正则是取<td>和</td>之间的内容,但是楼主给的正则的局限性比较大如果是
<td id="test">one line.
another line.</td>
这样的<td...>中带属性,内容带换行的就不行了
或者是同时有多个td标签,“.*”贪婪模式可能会取到不希望的结果可以这样写正则
(?is)(?<=<td[^>]*>)(?:(?!</?td\b).)*(?=</td>)至于解释,有时间可以看下我的博客,不过多是基础语法的解释,需要综合起来理解
(exp) 匹配exp,并捕获文本到自动命名的组里
(?<name>exp) 匹配exp,并捕获文本到名称为name的组里,也可以写成(?'name'exp)
(?:exp) 匹配exp,不捕获匹配的文本,也不给此分组分配组号
(?=exp) 匹配exp前面的位置
(?<=exp) 匹配exp后面的位置
(?!exp) 匹配后面跟的不是exp的位置
(?<!exp) 匹配前面不是exp的位置
(?#comment) 这种类型的分组不对正则表达式的处理产生任何影响,用于提供注释让人阅读