Javascript.RU

PHP-функция: strip_tags

Javascript:

function strip_tags( str ){	// Strip HTML and PHP tags from a string
	// 
	// +   original by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)

	return str.replace(/<\/?[^>]+>/gi, '');
}

Примеры:

strip_tags('Kevin <br />van <i>Zonneveld</i>');
'Kevin van Zonneveld'


Автор: Гость (не зарегистрирован), дата: 1 февраля, 2010 - 10:46
#permalink

а как добавить исключения?


Автор: B@rmaley.e><e, дата: 1 февраля, 2010 - 15:04
#permalink

Переписать функцию.


Автор: Гость (не зарегистрирован), дата: 10 августа, 2014 - 21:42
#permalink
function  strip_tags(str, allowed_tags) { 
              var key = '', allowed = false; 
              var matches = []; 
              var allowed_array = []; 
              var allowed_tag = ''; 
              var i = 0; 
              var k = ''; 
              var html = ''; 
     
              var replacer = function(search, replace, str) { 
                  return str.split(search).join(replace); 
              }; 
     
              // Build allowes tags associative array 
              if (allowed_tags) { 
                  allowed_array = allowed_tags.match(/([a-zA-Z]+)/gi); 
              } 
     
              str += ''; 
     
              // Match tags 
              matches = str.match(/(<\/?[\S][^>]*>)/gi); 
     
              // Go through all HTML tags 
              for (key in matches) { 
                  if (isNaN(key)) { 
                      // IE7 Hack 
                      continue; 
                  } 
     
                  // Save HTML tag 
                  html = matches[key].toString(); 
     
                  // Is tag not in allowed list? Remove from str! 
                  allowed = false; 
     
                  // Go through all allowed tags 
                  for (k in allowed_array) { 
                      // Init 
                      allowed_tag = allowed_array[k]; 
                      i = -1; 
     
                      if (i != 0) { i = html.toLowerCase().indexOf('<'+allowed_tag+'>');} 
                      if (i != 0) { i = html.toLowerCase().indexOf('<'+allowed_tag+' ');} 
                      if (i != 0) { i = html.toLowerCase().indexOf('</'+allowed_tag)   ;} 
     
                      // Determine 
                      if (i == 0) { 
                          allowed = true; 
                          break; 
                      } 
                  } 
     
                  if (!allowed) { 
                      str = replacer(html, "", str); // Custom replace. No regexing 
                  } 
              } 
     
              return str; 
          }

Автор: regexxxp (не зарегистрирован), дата: 16 сентября, 2014 - 16:08
#permalink

Регулярное выражение для идентификации тэгов выглядит еще короче, чем указано в начале статьи:

/<[^>]+>/gi

поскольку фраза `\/?` будет учтена в условии `[^>]`......


Автор: black_defender (не зарегистрирован), дата: 14 октября, 2016 - 12:18
#permalink

element.innerHTML = element.textContent || element.innerText;


Автор: evgeniy_v (не зарегистрирован), дата: 3 августа, 2017 - 17:24
#permalink

"Someword"
В chrome это "Some word"
в firefox это "Someword"


Автор: evgeniy_v (не зарегистрирован), дата: 3 августа, 2017 - 17:25
#permalink

там бр/ (тег переноса строки между some и word) (так пишу, так как вырезают теги в коммента)


Отправить комментарий

Приветствуются комментарии:
  • Полезные.
  • Дополняющие прочитанное.
  • Вопросы по прочитанному. Именно по прочитанному, чтобы ответ на него помог другим разобраться в предмете статьи. Другие вопросы могут быть удалены.
    Для остальных вопросов и обсуждений есть форум.
P.S. Лучшее "спасибо" - не комментарий, как все здорово, а рекомендация или ссылка на статью.
Содержание этого поля является приватным и не предназначено к показу.
  • Адреса страниц и электронной почты автоматически преобразуются в ссылки.
  • Разрешены HTML-таги: <strike> <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd> <u> <i> <b> <pre> <img> <abbr> <blockquote> <h1> <h2> <h3> <h4> <h5> <p> <div> <span> <sub> <sup>
  • Строки и параграфы переносятся автоматически.
  • Текстовые смайлы будут заменены на графические.

Подробнее о форматировании

CAPTCHA
Антиспам
1 + 6 =
Введите результат. Например, для 1+3, введите 4.
 
Поиск по сайту
Содержание

Учебник javascript

Основные элементы языка

Сундучок с инструментами

Интерфейсы

Все об AJAX

Оптимизация

Разное

Дерево всех статей

Последние комментарии
Последние темы на форуме
Forum