|
|
|
| Всем привет!
Есть такой код:
<span><a href="">текст</a></span>
<span>текст</span>
<span>текст</span>
<span>текст</span>
<span><a href="">текст</a></span>
<span><a href="">текст</a></span>
|
Как одним условием, можно пропарсить и выкорчевать текст. Порядок строк постоянно меняется.
Другими словами, нужно задать условие, которое будет игнорировать ОТСУТСТВИЕ <a href=""></a>, и которое будет вырезать при ПРИСУТСТВИИ <a href=""></a>. МудренО написал, но смысл такой вроде :)
Всем спасибо!! | |
|
|
|
|
|
|
|
для: Morkovkin
(08.05.2008 в 08:02)
| |
<?
$s = '<span><a href="">текст</a></span>
<span>текст</span>
<span>текст</span>
<span>текст</span>
<span><a href="">текст</a></span>
<span><a href="">текст</a></span>';
print strip_tags($s);
?>
|
| |
|
|
|
|
|
|
|
для: sim5
(08.05.2008 в 09:19)
| | Спасибо, но это немножко не то :)
У меня идёт разбор в цикле, данные обрабатываются по одной строчке, и мне нужно далее использовать верезанные значения. Я указал простенький пример, в том месте, где у меня возникла проблема, но там ещё большая строчка кода, которую я могу обработать, но она одинаковая везде. Но иногда встречается в определенном месте тег <a href=""></a>, и нужно составить запрос, который будет одновременно обрабатывать строку без <a href=""></a> и с ним.
p.s. Моя цель разобрать строку, а не удалить теги. | |
|
|
|
|
|
|
|
для: morkovkin
(08.05.2008 в 09:38)
| | - | |
|
|
|
|
|
|
|
для: morkovkin
(08.05.2008 в 09:38)
| |
<?php
$s = '<span><a href="">текст</a></span>
<span><a href="">текст</a></span>
<span>текст</span>
<span>текст</span>
<span>текст</span>
<span><a href="">текст</a></span>
<span><a href="">текст</a></span>';
if( preg_match_all('/^<span>(?:<a href=".*?">)?(.*?)(?:<\\/a>)?<\\/span>\s*$/mi', $s, $m) )
{
print_r( $m[1] );
}
?>
|
| |
|
|
|
|
|
|
|
для: Atheist
(08.05.2008 в 13:27)
| | СПАСИБО Атеист :) | |
|
|
|