精易论坛

标题: 这个正则表达式应该怎么写啊 [打印本页]

作者: 付笑    时间: 2014-1-17 11:10
标题: 这个正则表达式应该怎么写啊


内容如下:

<li><a itemid="law" class="child_link" href="/list-law-1.shtml">法治论坛</a></li>
<li><a itemid="funstribe" class="child_link" href="/list-funstribe-1.shtml"><font color="yellow">超级秀场</font></a></li>
<li><a itemid="1095" class="child_link" href="/list-1095-1.shtml">青春那点事</a></li>

需要的内容是 href="/list-law-1.shtml">  引号里面的内容,加上后面的汉字
我这样写的:
<li><a itemid="(.*?)" class="(.*?)" href="/(.*?)">(.*?)</a></li>

结果是第二条多了自己不想要的内容 :  <font color="yellow">  (这个不想要)

求答案啊

作者: 天中小和尚    时间: 2014-1-17 11:10
新建 易程序.zip (144.66 KB, 下载次数: 2)
作者: Hoibben    时间: 2014-1-17 11:17
本帖最后由 Hoibben 于 2014-1-17 11:44 编辑

尼玛啊,这年头的人啊都看不见的。。。。
作者: 天中小和尚    时间: 2014-1-17 11:19
href *= *['"]*(\S+)["']
精易编程助手自带的语句   
作者: 付笑    时间: 2014-1-17 11:21
天中小和尚 发表于 2014-1-17 11:19
href *= *['"]*(\S+)["']
精易编程助手自带的语句

啊,我试试,
作者: 付笑    时间: 2014-1-17 11:21
天中小和尚 发表于 2014-1-17 11:19
href *= *['"]*(\S+)["']
精易编程助手自带的语句

帮写个完整的表达式出来是什么样啊
作者: 天中小和尚    时间: 2014-1-17 11:23
这个就是完整的啊   直接匹配到你要的了   
href *= (*['"]*(\S+)["'])   这样?


作者: 付笑    时间: 2014-1-17 11:27
天中小和尚 发表于 2014-1-17 11:23
这个就是完整的啊   直接匹配到你要的了   
href *= (*['"]*(\S+)["'])   这样?

执行表达式错误
作者: 付笑    时间: 2014-1-17 11:29
天中小和尚 发表于 2014-1-17 11:23
这个就是完整的啊   直接匹配到你要的了   
href *= (*['"]*(\S+)["'])   这样?

我还要取出后面的中文呢
作者: 天中小和尚    时间: 2014-1-17 11:33
href *= *['"]*(\S+)["']>([\s\S]*?)</a>
作者: 付笑    时间: 2014-1-17 11:35
天中小和尚 发表于 2014-1-17 11:33
href *= *['"]*(\S+)["']>([\s\S]*?)

结果为0呢...
作者: Hoibben    时间: 2014-1-17 11:36
付笑 发表于 2014-1-17 11:35
结果为0呢...

沙发的你试了么。。。
作者: 天中小和尚    时间: 2014-1-17 11:36
什么结果为0    编程助手里面调试看看啊  
作者: 付笑    时间: 2014-1-17 11:41
天中小和尚 发表于 2014-1-17 11:36
什么结果为0    编程助手里面调试看看啊

可以,但是第二条还是多了自己不想要的,就是那个 <font>标签也匹配出来了,我不想要他
作者: 天中小和尚    时间: 2014-1-17 11:42
不想要  就再处理一下     用中文字符 再匹配一下   
匹配中文字符表达式  编程助手里面都有的   
作者: 付笑    时间: 2014-1-17 11:44
天中小和尚 发表于 2014-1-17 11:42
不想要  就再处理一下     用中文字符 再匹配一下   
匹配中文字符表达式  编程助手里面都有的   {:4_256: ...

明白了谢谢了
作者: Hoibben    时间: 2014-1-17 11:46
天中小和尚 发表于 2014-1-17 11:42
不想要  就再处理一下     用中文字符 再匹配一下   
匹配中文字符表达式  编程助手里面都有的   {:4_256: ...

特么的沙发有屎没人看见,擦。。。。
作者: 付笑    时间: 2014-1-17 11:49
天中小和尚 发表于 2014-1-17 11:42
不想要  就再处理一下     用中文字符 再匹配一下   
匹配中文字符表达式  编程助手里面都有的   {:4_256: ...

发现,在一个表达式里不行吧,再怎么匹配啊,因为第二条比较特殊啊,多了别的没有的内容啊
作者: 天中小和尚    时间: 2014-1-17 11:52
[\u4e00-\u9fa5]+   用这个再匹配一下
作者: 付笑    时间: 2014-1-17 11:53
天中小和尚 发表于 2014-1-17 11:52
[\u4e00-\u9fa5]+   用这个再匹配一下

我研究下啊,谢谢
作者: 付笑    时间: 2014-1-17 11:59
天中小和尚 发表于 2014-1-17 11:52
[\u4e00-\u9fa5]+   用这个再匹配一下

还是不简单啊,要不是第二条多了不想要的内容,要不第二条就匹配不到,少了条记录,你写个完全的表达式看看啊
作者: 付笑    时间: 2014-1-17 12:06
天中小和尚 发表于 2014-1-17 12:05

<li><a itemid="(.*?)" class="(.*?)" href="/(.*?)">((.*?)[\u4e00-\u9fa5]([\u4e00-\u9fa5]*?)([a-z]*?))</a></li>

这样到可以,就是看着好复杂啊




欢迎光临 精易论坛 (https://125.confly.eu.org/) Powered by Discuz! X3.4