Вырезать часть строки

Тема в разделе "Регулярные выражения", создана пользователем alexz15, 2 июл 2011.

Статус темы:
Закрыта.
Модераторы: xpert13
  1. alexz15

    alexz15

    Регистр.:
    3 окт 2008
    Сообщения:
    394
    Симпатии:
    190
    Есть такой код:
    HTML:
    <p>Астрологический прогноз на: 02.07.2011 00:14:29 (московское время, GMT +3:00)</p>
    Как сделать, чтобы получилось так:
    HTML:
    <p>Астрологический прогноз на: 02.07.2011</p>
    При этом, дата и время всегда меняются. Заранее благодарен.
     
  2. Maza

    Maza

    Регистр.:
    3 июл 2007
    Сообщения:
    255
    Симпатии:
    118
    Проще я думаю будет написать регэксп на поиск формата даты и времени
    , а потом уже подставлять их в шаблон
    Регэкс, типо такого
     
    alexz15 нравится это.
  3. alexz15

    alexz15

    Регистр.:
    3 окт 2008
    Сообщения:
    394
    Симпатии:
    190
    можно поподробнее, а то не совсем понял. я в этом мало разбираюсь..
     
  4. zzallexx

    zzallexx

    Регистр.:
    11 июн 2008
    Сообщения:
    1.036
    Симпатии:
    699
    PHP:
    <?php
    $str 
    '<p>Астрологический прогноз на: 02.07.2011 00:14:29 (московское время, GMT +3:00)</p>';
    preg_match('/<p>(.*?)\d{0,2}:\d{0,2}:\d{0,2}/is',$str,$match);
    echo 
    "<p>".$match[1]."</p>";
     
    alexz15 нравится это.
  5. Miraage

    Miraage Angular/Laravel

    Регистр.:
    3 июн 2008
    Сообщения:
    230
    Симпатии:
    51
    setlocale() + strtotime() в помощь
    регулярки отсекаются ;x
     
  6. kokoulin

    kokoulin Постоялец

    Регистр.:
    1 дек 2010
    Сообщения:
    57
    Симпатии:
    3
    если вы это парсите и куда то вставляете то можно так
    preg_replace("/(?<=\().*(?=\))/", "", $replace);
     
  7. alexz15

    alexz15

    Регистр.:
    3 окт 2008
    Сообщения:
    394
    Симпатии:
    190
    получается так:
    HTML:
    Астрологический прогноз на: 02.07.2011 00:14:29 ()
    этот код я парсю и в нем может находиться много <p>...</p>.
     
  8. zzallexx

    zzallexx

    Регистр.:
    11 июн 2008
    Сообщения:
    1.036
    Симпатии:
    699
    PHP:
    <?php 
    $str 
    '<p>Астрологический прогноз на: 02.07.2011 00:14:29 (московское время, GMT +3:00)</p>'
    preg_match('/<p>Астрологический прогноз на:(.*?)\d{0,2}:\d{0,2}:\d{0,2}/is',$str,$match); 
    echo 
    "<p>Астрологический прогноз на:".$match[1]."</p>";
    тогда можешь так сделать
     
  9. AXP

    AXP Создатель

    Регистр.:
    16 мар 2007
    Сообщения:
    27
    Симпатии:
    2
    сделай preg_replace по этой регулярке:
    #<p>([^\d]+[^\s]+)#i
     
Статус темы:
Закрыта.