특정 태그 제외하고 HTML태그를 코드로 변경하기
2022. 6. 17. 16:09ㆍ언어/JSP&Javascript
DB에서 불러와 화면에 출력해줄 때
데이터에 HTML 태그가 포함되어 있는 경우 화면UI에 문제가 생길 수 있다.
문제 방지를 위해 특수문자를 코드로 변환해줘야한다
모든 태그를 수정하고 싶을때 아래 코드를 사용하면 된다.
val.replace(/</gi, "<" );
만약 특정 태그(em태그)는 살리고 싶으면 아래 코드를 사용하면 된다.
val.replace(/<(?!em>)(?!\/em>)/gi, "<" );
예제
var val = "<h4>태그</h4> 테스트 <em>test</em> 입니다.";
var result1 = val.replace(/</gi, "<" );
var result2 = val.replace(/<(?!em>)(?!\/em>)/gi, "<" );
result1 결과
<>HTML 삽입미리보기할 수 없는 소스
result2 결과
<>HTML 삽입미리보기할 수 없는 소스
result2의 경우 em태그의 짝이 맞지 않을 경우도 생각하여 개수를 확인해주는 것이 좋다.
val.match(/<em>/gi );