2012-01-09 2 views
2

У меня есть некоторый текст вводится в textarea, который выглядит следующим:Последовательная разбор текста для необработанного HTML вывода

Here's some text./r/n 
/r/n 
Here's some more text. 

Я хотел бы, чтобы сделать это на дисплее так:

<p>Here's some text.</p> 
<p>Here's some more text.</p> 

Есть ли какие-либо модули в Node.js, которые заботятся о том, чтобы текст, введенный пользователем, в необработанный HTML для отображения? Или я должен использовать какую-либо форму replace? Если последнее, какое подходящее регулярное выражение?

Что-то вроде PHP HTML Purifier было бы идеально.

ответ

0

Я не уверен, насколько сложным будет текст ввода, но я бы предложил showdown. Это уценка на HTML-конвертер, написанная на javascript. Может быть, немного интереснее, чем вы просите, но это должно позволить вам легко поддерживать уценку для ввода.

0

В данном случае это будет делать трюк (где t является входным внутр и n является Node для добавления к):

var a = t.split([\n\t\r]+) ; 

for(var i = 0, p ; i < a.length ; i++) { 
    p = document.createElement("p") ; 
    if(!! window.ActiveXObject) p.innerText = a[i] ; 
    else p.textContent = a[i] ; 
    n.appendChild(p) ; 
} 

Из Вашего вопроса Похоже, вам нужен более общий подход, Однако.


Try it on JSBin

Смежные вопросы