Как убрать тег и сохранить текст в элементе с помощью RegExp? - PullRequest
1 голос
/ 14 мая 2009

Я хочу удалить тег элемента и сохранить текст внутри тега. Я использую функцию замены в RegExp, но она удалила все: тег и текст внутри тега.

Я не хочу этого, я хочу удалить только тег. Очистите текст, удалите теги, я хочу представить только текст.

var str = str.replace(/<.>[^.]*\/.>/, "");

Я использовал это, но есть проблема, он также удалил текст внутри него!

Ответы [ 3 ]

3 голосов
/ 14 мая 2009

а как же

var obj = $('#element');

var str = obj.text();

0 голосов
/ 14 мая 2009

Быстро и грязно:

var str = "<foo>bar</foo>"; alert(str.replace(/<[^>]+>/g, ""))

Попробуйте вместо этого использовать реальный синтаксический анализ и манипулирование DOM. Корректная обработка HTML с использованием RegExp очень сложна.

0 голосов
/ 14 мая 2009

Если вы действительно используете jQuery и хотите удалить все теги, просто установите для .html () значение .text ()

var e = $("#yourelement");
e.html(
    e.text()
);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...