-
AutoIt
(
http://forum.oszone.net/forumdisplay.php?f=103)
Вытянуть содержание HTML тега с помощью регулярных выражений
Вечер добрый всем! Помогите написать регулярное выражение. Вобщесть есть следующие данные <div id ="div1">...</div>. мне нужно вынуть содержание данного блока. Вместо трех точек может находится разнообразный текст. Дело в том что если этот блок представлен одной строкой то найти проблемы не возникает - <div id=.div1.>(?<content>.+)</div>...Но как изменить это выражение чтобы оно могло реагировать и на присутствие знака переноса строки и возврата каретки?
Заранее благодарен!
|
Код:
$sStr = @CRLF & '<body>' & @CRLF & '<div id="div1">... content ... ' & @CRLF & ' ...</div>' & @CRLF & '</body>'
$Test = StringRegExpReplace($sStr, '(?s).*<div id="div1">(.*)</div>.*', '\1')
ConsoleWrite($Test & @CRLF)
Из справки:
Цитата:
(?s) - matches anything including newline. (by default "." don't match newline)
|
|
уууууу спасибо огромное!!! очень помог, а я блин смотрел и в упор не видел что (s?) ловит все подряд:)))Спасибо еще раз!
|
Цитата:
Цитата aesir
спасибо огромное!!! очень помог »
|
Для этого есть ссылка Полезное сообщение под этим самым сообщением. А тему принято отмечать решённой (в заголовке темы есть ссылка «Отметить решенной»), если она является таковой ;)
|
Спасибо за совет и еще раз спасибо за помощь!!!:)))
|
Время: 23:01.
© OSzone.net 2001-