Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Как удалить пустые?

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
event
Отправлено: 22 Июня, 2019 - 10:24:08
Post Id


Частый посетитель


Покинул форум
Сообщений всего: 542
Дата рег-ции: Май 2011  


Помог: 0 раз(а)




Подскажите пожалуйста, как удалить пустые тэги style из текста? Пробую так, не работает почему-то:

PHP:
скопировать код в буфер обмена
  1. $text = "My test... Mytest <style>.test { color:red; } </style><style>  </style>";
  2.  
  3. echo preg_replace('/<style[^>]*><\\/style[^>]*>/', '', $text);
 
 Top
Мелкий Супермодератор
Отправлено: 22 Июня, 2019 - 10:28:24
Post Id



Активный участник


Покинул форум
Сообщений всего: 11926
Дата рег-ции: Июль 2009  
Откуда: Россия, Санкт-Петербург


Помог: 618 раз(а)




В регулярке написано, что между тегами не должно быть ничего. В примере текста между тегами есть пробельные символы. Поэтому совпадения нет.


-----
PostgreSQL DBA
 
 Top
event
Отправлено: 22 Июня, 2019 - 10:30:06
Post Id


Частый посетитель


Покинул форум
Сообщений всего: 542
Дата рег-ции: Май 2011  


Помог: 0 раз(а)




Мелкий, а как поправить регулярку чтобы удалялось даже если там один или много пробелов?
 
 Top
Мелкий Супермодератор
Отправлено: 22 Июня, 2019 - 10:33:32
Post Id



Активный участник


Покинул форум
Сообщений всего: 11926
Дата рег-ции: Июль 2009  
Откуда: Россия, Санкт-Петербург


Помог: 618 раз(а)




0 или больше совпадений - *
пробельный символ проще назвать как \s
итого указать между тегами \s*


-----
PostgreSQL DBA
 
 Top
event
Отправлено: 22 Июня, 2019 - 10:47:23
Post Id


Частый посетитель


Покинул форум
Сообщений всего: 542
Дата рег-ции: Май 2011  


Помог: 0 раз(а)




Мелкий, спасибо, сделал, получилось. Подскажи пожалуйста как еще убрать все внутрение ссылки в тексте? А то получается только все убрать, как только не пробую.
(Добавление)
CODE (html):
скопировать код в буфер обмена
  1. Text Text <a href="/test.php">test</a> <a href="https://google.com">google</a>


, вот как из этого текста убрать внутренную ссылку (/test.php), а ссылку на гугл оставить?
 
 Top
Мелкий Супермодератор
Отправлено: 22 Июня, 2019 - 14:30:04
Post Id



Активный участник


Покинул форум
Сообщений всего: 11926
Дата рег-ции: Июль 2009  
Откуда: Россия, Санкт-Петербург


Помог: 618 раз(а)




формализуете как выглядит то что надо оставить, а как то что надо убрать. Затем делаете регулярку. Скорей всего preg_replace_callback будет попросту удобнее.


-----
PostgreSQL DBA
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB