Регулярные выражения
Всем привет, начал работать над одним проектом по парсингу и возникла проблема украсть данную строку. Нужно регулярное выражение для данной строки.
<a onclick="document.fireEvent('goodsTitleClick',{extend_event:[{name:'goods_id',value:1558037}]});" href="http://ссылка"> текст </a> Собственно меняться будет только "текст" все остальное статично. Кстати пробелы и перенос так же нужны. Если кто знает как помочь буду очень благодарен. |
А если заюзать HTML-парсер? Это клиентский или серверный скрипт?
|
Цитата:
<div id='test'> <a onclick="document.fireEvent('goodsTitleClick',{extend_event:[{name:'goods_id',value:1558037}]});" href="http://ссылка"> текст </a> </div> <script type='text/javascript'> var str=document.getElementById('test').innerHTML; alert('"'+str.match(/>([\s\S]*)(?=<\/)/)[1]+'"'); </script> |
Клиент.
|
Цитата:
|
Ну если кроссбраузерность не нужна, то можно заюзать DOMParser
<textarea id='test'> <body> <a onclick="document.fireEvent('goodsTitleClick',{extend_event:[{name:'goods_id',value:1558037}]});" href="http://ссылка"> текст </a> </body> </textarea> <script> (function(){ var parser = new DOMParser(); var doc = parser.parseFromString(test.value, 'text/html'); var link = doc.getElementsByTagName('a')[0]; alert(link.outerHTML); })(); </script> outerHTML - тоже не кроссбраузерное свойство, но это решаемо. |
Цитата:
var found = textCut[0].match(/<a onclick="document.fireEvent('goodsTitleClick',{extend_event:[{name:'goods_id',value:.*}]});" href="http:\/\/rozetka.com.ua\/.*\/">\s.*\s<\/a>/); |
Часовой пояс GMT +3, время: 04:21. |