Регулярные выражения,ошибки

theleif

Guest
Регулярные выражения,ошибки

1)Кто сталкивался с подобной проблемой помогите,есть функции ereg и preg_match обе ищут в строке совпадения по регулярному выражения,но ereg ищет принимает регексп в POSIX-овом стандарте а preg_match в перловском,так вот,есть функция preg_match_all она ищет полностью по всему тексту совпадения которые соотвествуют с регекспом,а есть какое нибудь подобие этой функции но чтоб она принимала в posix-овом стандарте выражение?

2)да и ещё,если делать через preg_match_all делать
$html = "<b>bold text</b><a href=howdy.html>click me</a><h6>teststst</h6><h6>tefststsdddt</h6>ststsdddt</h6>";

preg_match_all("/(\<h6\>)(.+)(\<\/h6\>)/", $html, $matches);

я в $html запихнул по идеии всего 2 соотвествия первое это <h6>teststst</h6> а второе <h6>tefststsdddt</h6> , третье я запихнул без открывающего тэга <h6> поэтому по идеи оно не должно попадать в шаблон,однако попадает,почему?регексп вроде правильно составлен
 

sage

Новичок
1). нет, используй PCRE
2).
PHP:
preg_match_all("#(<h6>.+?<\/h6>)#si")
P.S. На деталях есть хорошие статейки по регам
 

theleif

Guest
Спасибо помогло :),но ещё такой вопрос
Результат то собственно возвращается но вместе с шаблонам,т.е. если
PHP:
echo $matches[0][0];
то идёт что-то вроде
<h6>блаблабла</h6>
а как сделать чтобы в элемент массива возвращалось только то что соотвествует (.+?) а не остальные части шаблона?
 
Сверху