2014-11-03 6 views
0

HTML 태그가 포함 된 텍스트 스 니펫을 Javascript/Node.Js를 사용하여 일반 텍스트로 변환해야합니다.자바 스크립트에서 HTML을 올바르게 변환하는 방법?

현재 String.Js 라이브러리를 사용하고 있지만 strip_tags() 함수를 사용하여 태그를 제거 할 때 문제가 발생하면 새 줄도 제거됩니다.

예.

<div>Some text</div><div>another text</div> 

Some textanother text 

당신은 내가이 문제를 제거 할 수 방법을 알고 있나요된다? 어쩌면 다른 도서관?

감사합니다.

+0

당신이 원하는 요소에 대한 DOM을 통과하고 전화를? – elclanrs

+0

@elclanrs 정교하게 주시겠습니까? 감사! –

+0

DOM을 사용할 수 있다면,'element.innerHTML'을 사용하여 그 내장에 접근 할 수 있습니다. – Compass

답변

0

안녕하세요 이것은 reg exp를 사용하고있어 원하는 작업을 수행 할 수 있기 때문에 문제의 매우 간단한 해결책입니다.

이 경우 우리는 br 태그를 제외한 모든 태그를 제거합니다. 원하는 경우 br 태그를 제거하고 다른 태그를 \ n \ t 또는 원하는 것을 추가 할 수 있습니다.

도움이 될 수 있기를 바랍니다.

Chears !!!

var html = "<div>Some text</div><div>another text</div><br />test<div>10</div>"; 
var removeHtmlTags = html.replace(/(<([^>!br]+)>)/ig,""); 
console.log(removeHtmlTags); 
+1

OP의 특정 HTML을보십시오. 그것은 '
'태그에 관한 것이 아닙니다. 이것은 OP가 원하는 것을 수행하기위한 솔루션으로서 훨씬 단순한 해결책이며 OP가 제공하는 샘플 HTML에서도 작동하지 않습니다. – jfriend00

1

Cheerio을 사용해보세요. 서버 측에서 jQuery와 같은 인터페이스를 노출합니다. 그럼 그냥 :

var html = $(htmlstring).html(); 

그런 다음 당신이 DOM을 사용할 수 없습니다 $(element).text();

+0

OP의 개행 문제를 해결하는 것처럼 들리지 않습니다. – jfriend00