Помогите составить регулярное выражение
Добрый день!
Подскажите, пожалуйста, как с помощью регулярных выражений PHP получить строку, у которой в начале и в конце (ВАЖНО!) строки НЕ стоит тег div (не обрамляет её (строку))? Пример: // эту строку не надо <div>Lorem ipsum.</div> // эту строку надо <div>Lorem</div> ipsum. // эту строку надо Lorem ipsum. // и эту строку надо <li>Lorem ipsum.</li> // эту не надо <div><span>Lorem ipsum.</span></div> |
Цитата:
var arr=[ '<div>Lorem ipsum.</div>', '<div>Lorem</div> ipsum.', 'Lorem ipsum.', '<li>Lorem ipsum.</li>', '<div><span>Lorem ipsum.</span></div>' ]; var reg=/^<div>.*(?=<\/div>$)/i; for (var i=0; i<arr.length; i++) { alert(arr[i]+' - '+((reg.test(arr[i]))? 'не брать': 'брать')); }; |
ksa,
это не РНР. :) |
Цитата:
|
Цитата:
http://www.skillz.ru/dev/php/article...chaynikov.html Различий не так уж и много... :D |
Цитата:
Да и не нужно этого, проще удалить непотребное, оставив нужное, и если каждая строка не имеет переносов, то просто: $s = '<div>Lorem ipsum.</div> <div>Lorem</div> ipsum. Lorem ipsum. <li>Lorem ipsum.</li> <div><span>Lorem ipsum.</span></div>'; $s = preg_replace('/<div>.+<\/div>/', '', $s); echo $s; |
Цитата:
|
Цитата:
|
laimas,
Здравствуйте, мне не надо удалить, мне нужно, если это не блок див, то обернуть параграф тегом p, чтобы вышло так: Было: <div>Lorem ipsum.</div> <div>Lorem</div> ipsum. Lorem ipsum. <li>Lorem ipsum.</li> <div><span>Lorem ipsum.</span></div> Стало: <div>Lorem ipsum.</div> <p><div>Lorem</div> ipsum.</p> <p>Lorem ipsum.</p> <p><li>Lorem ipsum.</li></p> <div><span>Lorem ipsum.</span></div> |
Цитата:
|
Часовой пояс GMT +3, время: 02:58. |