strip_tags и trim на Javascript
То есть, удаление тегов HTML и лишних лидирующих (завершающих) пробелов в строке на Javascript, готовых для всех целей функций нету. Похоже, как обычно, лучшими оказываются самые простые решения, в инете что-то сложновато :)
function strip_tags (string) { return string.replace(/<\/?[^>]+>/gi, ''); } function alltrim(string) { return string.replace (/(^\s+)|(\s+$)/g, ""); }
С первой из функций, вроде бы, не возникло проблемы с отдельно стоящими знаками "<" или ">", вот из этого 1 < длинная_ строка...
она длинную строку не пропустит :)
Ну и заодно использовал в этой статье
Регулярные выражения к использованию не обязательны, например, удалить все лишние пробелы из строки (т.е., пробелы в конце и начале, а также больше одного пробела между словами) можно и так:
function alltrim(s) { var l=s.length; var t='',c,c0=' '; for (var i=0; i<l; i++) { c=s.substring(i,i+1); if (c==' ') { if (c0==' ') continue; } c0=c; t+=c; } l=t.length; if (t.substring(l-1,l)==' ') t=t.substring(0,l-1); return t; }
Или с помощью двух Regexp, первый удалить все лишние разделители между словами, второй - лишние разделители в начале и конце строки, если такие остались:
function alltrim(string) { return string.replace (/\s+/g, " ").replace(/(^\s*)|(\s*)$/g, ''); }
Ну и учтите, что простой прототип функции trim
в обновлённых стандартах JavaScript уже есть.
17.05.2010, 12:03 [11607 просмотров]