现保存一篇文章在库中 标题用varchar2 (oracle) 内容是clob
  如要搜索关键词: 你好     我现在实现办法是:
  DBMS_LOB.INSTR(t.CONTENT, '你好', 1, 1) > 0 or t.title like '%你好%'
  这样是能搜索出来 
  现有一问题是在库中保存的内容有一部分是页面标签来的  
  如在库中clob有这样的数据: <LI><A href="http://msn.ynet.com/view.jsp?oid=43056433"> 这些样式标签链接等,但这些内容是在页面没有显示出来的,如搜索关键词:.com 搜出来的内容就客户所要求不一致了
  现请教各路高人 这种情况如何解决   
            

解决方案 »

  1.   

    sql中也是可以用正则的
    REGEXP_函数名
    (REGEXP_LIKE(ENAME,'^[[:alpha:]]+$'))
    红色的是正则,你写个可以过滤标签的出来就行了
    当然了,如果你那些是无序的(一些有,一些没有。)那我也不知道了
      

  2.   

    sql中也是可以用正则的 
    REGEXP_函数名 
    (REGEXP_LIKE(ENAME,'^[[:alpha:]]+$')) 
      

  3.   

    thanks 1楼的
    但没想到如何过滤
    内容是如我们平时的页面一样什么东西也有,有些有标签,有些是没标签的
    只要搜出带有关键词的记录就OK了(不包括关键词出现在标签中)
      

  4.   

    表可能会比较大
    内容是用clob保存 
    那是不是我先要全表检索把有带有标签的内容全替换成一个空串 这个做为一个子表
    (因关键词可能会出现在这个lob标签里面,也可能是在内容里面)
    然后再在这个子表中找出包括这关键词的记录ID
    最后根据这些ID在原表中把这些记录找出来,这个时间效率会不会有问题
      

  5.   

    测试不出来
    'REGEXP_' 不是可以识别的 函数名。