DedeCMS采集教程:过滤替换的技巧

DedeCMS采集教程:过滤替换的技巧
根据我个人织梦dedecms采集过程总结了一些经验,写出来供大家参考。
  1.采集去除链接
  1. [Copy to clipboard]CODE:
  2.   {dede:trim}]*)>([^<]*){/dede:trim}
  3.   ——————————–
  4.   让field:title 标题突破30这个长度,修改代码的方法
  5.   找到./include/inc_arcpart_view.php
  6.   行291 :
  7.   if($titlelen==””) $titlelen = 30;
  8.   修改为
  9.   if($titlelen==””) $titlelen = 60;
  10.   就可以了,然后,你可以这样调用了
  11.   {dede:channelArtlist typeid=‘0’ col=1 tablewidth=‘100%’}
  12.   {dede:arclist row=“10”}
  13.   [field:title function=“cn_substr(‘@me’,38)” /]
  14.   {/dede:arclist}
  15.   {/dede:channelArtlist}
  16.   把这个延伸一下:关于inc_arcpart_view.php
  17.   function GetArcList($typeid=0,$row=10,$col=1,$titlelen=30,$infolen=160,
  18.   $imgwidth=120,$imgheight=90,$listtype=“all”,$orderby=“default”,$keyword=“”,
  19.   $innertext=“”,$tablewidth=“100”,$arcid=0,$idlist=“”)
  这里的参数都可以更改你实际需要的模板元素尺寸大小.
  2. 采集过虑中去掉链接保留文字的方法!
  柏老大的方法是{dede:trim}<a ([^>]*)>([^<]*)</a>{/dede:trim}
  这样做会去掉<a hf…….>与</a>之间的字符!这样整个文章就少了部分字符,不完整了!
  后来我多次测试,总算找到了正确的使用方法!如下:
  1. {dede:trim}<a([^>]*)>{/dede:trim}
  2.  {dede:trim}</a>{/dede:trim}
  3.  做成两条采集规则就可以了!
  4.  在实际使用中好像([^<]*)([^>]*)两条一起使用才行!
  3. 过滤div
  1. {dede:trim}]*)>{/dede:trim}
  2.  {dede:trim}
  3.  {/dede:trim}
  4.  过滤js
  5.  {dede:trim}]*)>([^<]*){/dede:trim}
  6.  过滤未知变量字符
  7.  固定(.*)固定
  4.dede万能过滤代码
  以下是常用的正则表达式标签
  1. {dede:trim}<tbody(.*)>{/dede:trim}
  2.  {dede:trim}</tbody>{/dede:trim}
  3.  {dede:trim}<table(.*)>{/dede:trim}
  4.  {dede:trim}</table>{/dede:trim}
  5.  {dede:trim}<tr(.*)>{/dede:trim}
  6.  {dede:trim}</tr>{/dede:trim}
  7.  {dede:trim}<td(.*)>{/dede:trim}
  8.  {dede:trim}</td>{/dede:trim}
  9.  {dede:trim}<font(.*)>{/dede:trim}
  10.  {dede:trim}</font>{/dede:trim}
  11.  {dede:trim}<a(.*)>{/dede:trim}
  12.  {dede:trim}</a>{/dede:trim}
  13.  {dede:trim}<param(.*)>{/dede:trim}
  14.  {dede:trim}<embed(.*)</embed>{/dede:trim}
  15.  {dede:trim}<object(.*)</object>{/dede:trim}
  16.  {dede:trim}<iframe(.*)</iframe>{/dede:trim}
  17.  {dede:trim}<form(.*)</form>{/dede:trim}
  18.  {dede:trim}<input(.*)>{/dede:trim}
  19.  {dede:trim}<script(.*)</script>{/dede:trim}
  20.  {dede:trim}<style(.*)</style>{/dede:trim}
  21.  {dede:trim}<!–(.*)–>{/dede:trim}
  22.  以下为不常用的正则表达式标签
  23.  {dede:trim}<div(.*)>{/dede:trim}
  24.  {dede:trim}</div>{/dede:trim}
  25.  {dede:trim}<center(.*)>{/dede:trim}
  26.  {dede:trim}</center>{/dede:trim}
  27.  {dede:trim}<p(.*)>{/dede:trim}
  28.  {dede:trim}</p>{/dede:trim}
  29.  {dede:trim}<span(.*)>{dede:trim}
  30.  {dede:trim}</span>{dede:trim}
  31.  {dede:trim}<img(.*)>{/dede:trim}
以上内容仅供大家学习参考,希望对你有所帮助。