2010-07-22 1 views
1

У кого-нибудь есть исправление для следующего:Содержимое тега HTML-заголовка и атрибут регулярных выражений preg_match

Я принимаю следующую строку:

<span id="tmpl_main_lblWord" class="randomWord">kid</span> 

и с помощью следующего правила preg_match/регулярное выражение;

preg_match("'/(<span id=.* class=.*>)(.*)(<\/span>)/'si", $buffer, $match); 

Но его возвращение с пустым массивом любых идей?

ответ

1

В общем, я бы настоятельно советовал использовать регулярное выражение, чтобы попытаться получить значения из HTML. Я бы использовал парсер HTML. См. Этот вопрос: Robust and Mature HTML Parser for PHP

Если вы настаиваете, хотя ... у вас, похоже, есть два набора вложенных цитат. Я бы удалил внутренние одинарные кавычки. Это должно решить вашу проблему.

+0

Спасибо, я раздел вложенную работу - работал большим. – cocacola09

+0

Рад помочь :) – Josiah

2

В следующем примере используется DOMDocument:

$doc = new DOMDocument(); 
$doc->loadHtml('<span id="tmpl_main_lblWord" class="randomWord">kid</span>'); 
$el = $doc->getElementById('tmpl_main_lblWord'); 
echo 'Inner text is: ' . $el->textContent; 
+0

Спасибо, очень полезно. – cocacola09

Смежные вопросы