Board logo

标题: [问题]请问常规表示式匹对中文字元方法 [打印本页]

作者: split    时间: 2007-7-31 19:37     标题: [问题]请问常规表示式匹对中文字元方法

我最近常常去一个Discuz!的论坛,
这个论坛会摆放两种广告,文字广告和图片广告..

我观察了他的原始码发现,这些广告都会用HTML注解标示起来:
  1. <!--圖檔廣告開始-->
  2. <center>
  3. <table border="0" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="59" id="AutoNumber1">
  4.   <tr>
  5.     广告广告
  6.     </tr>
  7. </table>
  8. </center>
  9. <!--圖檔廣告結束-->

  10. <!--文字廣告開始-->
  11. <center>广告广告</center>
  12. <!--文字廣告結束-->
复制代码


所以我想要用常规表示式来匹配"<!--文字廣告開始-->"到
<!--文字廣告結束->",但是使用unicode无法比对到(该网页使用big5码),
请问有没有人可以帮忙?
作者: split    时间: 2007-7-31 20:55

终於找到问题了..
只是因为广告过滤规则教程有误...
教程中写的:
  1. #(type)#(restring)###(replace string)
复制代码
应该要改成
  1. #(type)#(url matching)#(restring)###(replace string)
复制代码


所以我的案子只要加入
  1. #exd#*forum*#廣告開始-->###following Ad removed
复制代码
就OK了

[ 本帖最后由 split 于 2007-7-31 20:57 编辑 ]
作者: elkay    时间: 2007-7-31 21:06     标题: 回复 #2 split 的帖子

呵呵,也许是那个帖子没有能说明白。

实际上是有2种,如下:
#ex#(restring)###(replace string)
#exd#(url matching)#(restring)###(replace string)
作者: tongang    时间: 2007-7-31 21:06

建议你用unicode 编码:

\u(xxx)

具体的对应请查unicode编码表...我从网上随便找了个.


http://code.web.idv.hk/uao/uao.php
作者: elkay    时间: 2007-7-31 21:07     标题: 回复 #4 tongang 的帖子

好像tw的正则表达式引擎不支持这个,我试过多次都以失败告终。
作者: tongang    时间: 2007-7-31 21:13

我可以啊..原来的表达式就已经写出来过了..

DownInfo\u0028(.*?),"(.*?)","(.*?)","(.*?)"\u0029[\s\S]*?
这个就是

DownInfo(xxxxxx)
作者: elkay    时间: 2007-7-31 21:19

哦,我没有仔细研究,不过用到的机会也不多
作者: www.813.com.cn    时间: 2007-8-1 18:46

提示: 作者被禁止或删除 内容自动屏蔽




欢迎光临 世界之窗论坛 (http://bbs.theworld.cn/) Powered by Discuz! 7.2