오라클에서 특정 태그를 제거 하고 싶습니다. 0 3 3,514

by 갱이 [2014.11.11 14:35:46]


안녕하세요

계속 해결책을 찾아 이것저것 해봐도 답이 나오지가 않아서 글을 올리게 되었습니다.

DB에 HTML태그가 들어있는데요 이중 font-size 관련 속성만 제거하려고 합니다.

그래서 인터넷에 나온 정규식들을 모두 써보았는데요

첫 번째   '|font\-size:.*?;|si'
두 번째    '/font\-(size|family):[^;\\\'\"]+;?/'

        SELECT REPLACE(aaa,'|font\-size:.*?;|','')  AS aaa
        FROM
        (
        SELECT '<span class=\"Apple-style-span\" style="font-size: 12px;">(뉴스) ' AS aaa
        FROM DUAL
        )

모두 해보았지만..ㅠ_ㅠ

여기 계신 구루비의 고수님들의 조언이 필요합니다.

부탁드립니다.

by DarkBee [2014.11.11 15:33:47]

정규표현식은 REGEXP_REPLACE 로 하셔야합니다.


by 갱이 [2014.11.11 15:53:12]

앗..REGEXP_REPLACE를 안썼군요 ㅠ_ㅠ

정말 감사합니다


by 백면서생 [2014.11.11 16:03:21]
-- 생각나는대로 한번 만들어봤습니다.

with t 
as
(
 select '<span style="font-size:16pt;"></span><span style="font-size:16px;"></span>' str from dual 
)
select
      str
     ,regexp_replace(str,'(font-size:.{1,4}[pt|px|em];?)','',1,0,'i') mod_str
from t
where instr(lower(str),'font-size') > 0

 

댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입