регулярное выражения поиска html-тега
здравствуйте
практикуюсь в регулярных выражениях. не получается в тексте найти html-тег. помогите, пожалуйста var str = "Сайт рыбатекст поможет дизайнеру, верстальщику, 'вебмастеру сгенерировать the sun несколько абзацев более менее осмысленного' текста рыбы на русском языке, а начинающему оратору отточить навык публичных выступлений в домашних условиях. +7(903)-123-45-67 При создании генератора мы использовали небезызвестный универсальный код речей. Текст генерируется абзацами случайным образом от двух до десяти предложений в абзаце, что позволяет сделать текст более +7(912)-124-42-68 привлекательным и живым для визуально-слухового восприятия. Lorem ipsum dolor sit amet, consectetuer adipiscing elit. 'Aenean commodo ligula eget dolor. Aenean massa'. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Donec quam felis, ultricies nec, pellentesque eu, pretium quis, sem. Nulla consequat massa quis enim. Donec pede justo, fringilla vel, aliquet nec, vulputate eget, arcu. In enim justo, rhoncus ut, imperdiet a, venenatis vitae, <style> justo. Nullam dictum felis eu pede mollis pretium. Integer tincidunt. Cras dapibus. Vivamus elementum semper nisi."; var reg = /<style>/g; document.write(str.match(reg)); не выводится результат на экран. |
gazman,
match возвращает массив, на сколько я знаю: var str = "Сайт рыбатекст поможет дизайнеру, верстальщику, 'вебмастеру сгенерировать the sun несколько абзацев более менее осмысленного' текста рыбы на русском языке, а начинающему оратору отточить навык публичных выступлений в домашних условиях. +7(903)-123-45-67 При создании генератора мы использовали небезызвестный универсальный код речей. Текст генерируется абзацами случайным образом от двух до десяти предложений в абзаце, что позволяет сделать текст более +7(912)-124-42-68 привлекательным и живым для визуально-слухового восприятия. Lorem ipsum dolor sit amet, consectetuer adipiscing elit. 'Aenean commodo ligula eget dolor. Aenean massa'. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Donec quam felis, ultricies nec, pellentesque eu, pretium quis, sem. Nulla consequat massa quis enim. Donec pede justo, fringilla vel, aliquet nec, vulputate eget, arcu. In enim justo, rhoncus ut, imperdiet a, venenatis vitae, <style> justo. Nullam dictum felis eu pede mollis pretium. Integer tincidunt. Cras dapibus. Vivamus elementum semper nisi."; var reg = /<style>/g; alert(str.match(reg)[0]); |
Цитата:
|
выводиться должно <style>
с помощью массива также не выводится. другие правила выводит значения (например var reg = /\d/g), но когда пишу треугольные скобки, то ни чего не отображает |
Цитата:
Тогда, как вариант... var str = "Сайт рыбатекст поможет дизайнеру, <b>верстальщику</b>, 'вебмастеру сгенерировать the sun <span>несколько</span> абзацев более менее осмысленного' текста рыбы на русском языке, а начинающему оратору отточить навык публичных выступлений в домашних условиях. +7(903)-123-45-67 При создании генератора мы использовали небезызвестный универсальный код речей. Текст генерируется абзацами случайным образом от двух до десяти предложений в абзаце, что позволяет сделать текст более +7(912)-124-42-68 привлекательным и живым для визуально-слухового восприятия. Lorem ipsum dolor sit amet, consectetuer adipiscing elit. 'Aenean commodo ligula eget dolor. Aenean massa'. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Donec quam felis, ultricies nec, pellentesque eu, pretium quis, sem. Nulla consequat massa quis enim. Donec pede justo, fringilla vel, aliquet nec, vulputate eget, arcu. In enim justo, rhoncus ut, imperdiet a, venenatis vitae, <style> justo. Nullam dictum felis eu pede mollis pretium. Integer tincidunt. Cras dapibus. Vivamus elementum semper nisi."; var reg = /<[^\/]+?>/gm; alert(str.match(reg)); |
спасибо. всё хорошо
почему-то через document.write не выводит, а через alert всё хорошо |
Цитата:
|
Цитата:
хоть и не понимаю, зачем Вас с document.write, но вот так можно: <script type="text/javascript"> var str = "Сайт рыбатекст поможет дизайнеру, <b>верстальщику</b>, 'вебмастеру сгенерировать the sun <span>несколько</span> абзацев более менее осмысленного' текста рыбы на русском языке, а начинающему оратору отточить навык публичных выступлений в домашних условиях. +7(903)-123-45-67 При создании генератора мы использовали небезызвестный универсальный код речей. Текст генерируется абзацами случайным образом от двух до десяти предложений в абзаце, что позволяет сделать текст более +7(912)-124-42-68 привлекательным и живым для визуально-слухового восприятия. Lorem ipsum dolor sit amet, consectetuer adipiscing elit. 'Aenean commodo ligula eget dolor. Aenean massa'. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Donec quam felis, ultricies nec, pellentesque eu, pretium quis, sem. Nulla consequat massa quis enim. Donec pede justo, fringilla vel, aliquet nec, vulputate eget, arcu. In enim justo, rhoncus ut, imperdiet a, venenatis vitae, <style> justo. Nullam dictum felis eu pede mollis pretium. Integer tincidunt. Cras dapibus. Vivamus elementum semper nisi."; var reg = /<[^\/]+?>/gm; document.write(str.match(reg).join(", ").replace(/</g, "<").replace(/>/g, ">")); </script> |
Manyasha,
а без document.write и replace? |
я просто проверяю результат через document.write
мне больше нравится чем алерт |
Цитата:
|
понял))
|
Цитата:
На саму страницу вывести без replace только в тег xmp получилось: <xmp id = "tags"></xmp> <script type="text/javascript"> var str = "Сайт рыбатекст поможет дизайнеру, <b>верстальщику</b>, 'вебмастеру сгенерировать the sun <span>несколько</span> абзацев более менее осмысленного' текста рыбы на русском языке, а начинающему оратору отточить навык публичных выступлений в домашних условиях. +7(903)-123-45-67 При создании генератора мы использовали небезызвестный универсальный код речей. Текст генерируется абзацами случайным образом от двух до десяти предложений в абзаце, что позволяет сделать текст более +7(912)-124-42-68 привлекательным и живым для визуально-слухового восприятия. Lorem ipsum dolor sit amet, consectetuer adipiscing elit. 'Aenean commodo ligula eget dolor. Aenean massa'. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Donec quam felis, ultricies nec, pellentesque eu, pretium quis, sem. Nulla consequat massa quis enim. Donec pede justo, fringilla vel, aliquet nec, vulputate eget, arcu. In enim justo, rhoncus ut, imperdiet a, venenatis vitae, <style> justo. Nullam dictum felis eu pede mollis pretium. Integer tincidunt. Cras dapibus. Vivamus elementum semper nisi."; var reg = /<[^\/]+?>/gm; var el = document.getElementById("tags"); el.innerHTML = str.match(reg); console.log(str.match(reg)); </script> Но ведь Вы не просто так задали вопрос, есть еще какие-то интересные варианты?)) |
Manyasha,
задача получить тотже результат(html) что в вашем посте 8, но но без document.write и replace. в учебнике всё для этого есть. Добавление и удаление узлов |
рони,
replace всяко лучше. DOM добавляет тормозов, по-возможности его лучше не дергать |
scrollquest,
причём тут replace и тормоза, речь идёт о том чтобы нигде и никогда не использовать document.write новичкам, потом можно, но уже ненужно. |
рони,
Цитата:
|
scrollquest,
Цитата:
|
рони,
я давно подозревал, что Вы нулевой, сейчас окончательно убедился. Раньше я думал, что Вы только в ООП плаваете. |
scrollquest,
не засоряйте темы, плохими советами и конями в вакууме. |
scrollquest,
<script> var d = performance.now(); for (var i=0; i<1000; i++) {document.write("scrollquest".replace(/.*/,"$& конь в вакууме " ))} alert(performance.now()-d); d = performance.now(); for (var i=0; i<1000; i++) {document.body.appendChild(document.createTextNode("scrollquest конь в вакууме "))} alert(performance.now()-d); </script> |
рони,
это случайно не ваш сенсей написал? Цитата:
Он видать, чуток поумнел, вышел из состояния 100%-ного имбицила. Но на вас, русскоязычных адептов он положил болт, там платят больше центов |
Цитата:
var str = "Сайт рыбатекст поможет дизайнеру, <b>верстальщику</b>, 'вебмастеру сгенерировать the sun <span>несколько</span> абзацев более менее осмысленного' текста рыбы на русском языке, а начинающему оратору отточить навык публичных выступлений в домашних условиях. +7(903)-123-45-67 При создании генератора мы использовали небезызвестный универсальный код речей. Текст генерируется абзацами случайным образом от двух до десяти предложений в абзаце, что позволяет сделать текст более +7(912)-124-42-68 привлекательным и живым для визуально-слухового восприятия. Lorem ipsum dolor sit amet, consectetuer adipiscing elit. 'Aenean commodo ligula eget dolor. Aenean massa'. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Donec quam felis, ultricies nec, pellentesque eu, pretium quis, sem. Nulla consequat massa quis enim. Donec pede justo, fringilla vel, aliquet nec, vulputate eget, arcu. In enim justo, rhoncus ut, imperdiet a, venenatis vitae, <style> justo. Nullam dictum felis eu pede mollis pretium. Integer tincidunt. Cras dapibus. Vivamus elementum semper nisi."; var reg = /<[^\/]+?>/gm; document.body.appendChild(document.createTextNode(str.match(reg))); Цитата:
До createTextNode без Вашей ссылки не догадалась бы, спасибо за урок!:thanks: ой, меня уже опередили с примером... |
рони,
ну я ж говорил, что Вы нулевой. Вы еще и пруфец подкинули. Лан, надоела мне эта бредятина. Программист, который даже не понимает что он тестит, LOL. Думайте что хотите. |
scrollquest,
смотрите пост 21 строка 6, если бы написали эту строку, а не кучу текста, ещё можно было поверить что вы что-то умеите сами и внимательны к собеседникам. |
Manyasha,
:victory: :dance: |
рони,
мне нехрена смотреть, я вижу Ваши рассуждения, на уровне детского лепета, мне этого достаточно. А на собеседников мне вообще насрать, я не нанимался детей воспитывать |
Часовой пояс GMT +3, время: 22:17. |