За последние 24 часа нас посетил 18571 программист и 1632 робота. Сейчас ищут 1060 программистов ...

Нужна помощь в написание регулярки

Тема в разделе "Регулярные выражения", создана пользователем vitaliy1970, 18 дек 2013.

  1. vitaliy1970

    vitaliy1970 Новичок

    С нами с:
    5 дек 2013
    Сообщения:
    10
    Симпатии:
    0
    Строка имеет следующий вид
    "file": "images\\/shoes\\/accessories\\/Tote Bag.jpg"
    Интересующая меня часть это вот эта ссылка: images\\/shoes\\/accessories\\/Tote Bag.jpg
    Собственно проблема в том что строка находится в записи вот такого вида

    (1, 1, 'aksessuary', 'Кожаная сумка для обуви', 'totebag', '2012-07-18 21:00:44', '2012-10-28 00:30:22', 653, '2012-07-18 21:00:44', '0000-00-00 00:00:00', 0, 1537, 1, 1, 653, '', 1, ' {\n "a964e206-538c-4785-9bef-8edb56707a9e": {\n "file": "images\\/shoes\\/accessories\\/Tote Bag.jpg",\n "title": "",\n "link": "",\n "target": "0",\n "rel": "",\n "width": 2048,\n "height": 1536\n },\n "583d10cc-5df5-4b33-bddb-76b297d5a650": {\n "0": {\n "value": ""\n }\n },\n "29d7830e-db6d-4d76-af56-2f7f641da885": {\n "0": {\n "sku": "",\n "in_stock": "1",\n "value": "600",\n "description": ""\n }\n },\n "cc0cee48-2525-4697-a653-ce204e8c37f1": {\n "value": "1"\n }\n}', ' {\n "metadata.title": "",\n "metadata.description": "",\n "metadata.keywords": "",\n "metadata.robots": "",\n "metadata.author": "",\n "config.enable_comments": 0,\n "config.primary_category": 26\n}'),

    Помогите написать регулярку
     
  2. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    json_decode его и вперед
     
  3. vitaliy1970

    vitaliy1970 Новичок

    С нами с:
    5 дек 2013
    Сообщения:
    10
    Симпатии:
    0
    К сожалению json_decode возвращает NULL, поэтому и ищу выход с регуляркой.
     
  4. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    а ты ему строку в таком странном виде с
    {\n ,\n и \n}
    скармливаешь? =))
     
  5. vitaliy1970

    vitaliy1970 Новичок

    С нами с:
    5 дек 2013
    Сообщения:
    10
    Симпатии:
    0
    да в таком, к сожалению мне потом обратно в файл записывать, поэтому удалить их я не могу.
     
  6. YSandro

    YSandro Старожил

    С нами с:
    7 апр 2011
    Сообщения:
    2.523
    Симпатии:
    2
    Просто нужно правильно готовить:
    Код (PHP):
    1. $instr = "images\\/shoes\\/accessories\\/Tote Bag.jpg";
    2. $instr = '{"file":"'.$instr.'"}';
     
  7. vitaliy1970

    vitaliy1970 Новичок

    С нами с:
    5 дек 2013
    Сообщения:
    10
    Симпатии:
    0
    Вот эту строку мне и нужно получить с помощью регулярки:) у меня не одна запись, у меня их много, но общая часть у них вот эта ссылка
    :)
     
  8. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    а откуда они изначально берутся у тебя? и зачем тебе потом записывать это в файл?
     
  9. YSandro

    YSandro Старожил

    С нами с:
    7 апр 2011
    Сообщения:
    2.523
    Симпатии:
    2
    и как ты достал "запись" в таком виде? Это часть массива? Регулярку можно написать, если это строка. Если строка, то покажи именно строку, а не распечатанную часть массива (начинается со скобки и заканчивается скобкой с запятой).
     
  10. romach

    romach Старожил

    С нами с:
    26 окт 2013
    Сообщения:
    2.904
    Симпатии:
    719
    Так это ж кусок дампа таблицы. INSERT INTO ... VALUES (),()...;

    Почему не можешь? Менее валидным от этого json не станет ) И что вообще ты собрался записывать? По моему косяк тут где-то в последовательность действий.
     
  11. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    ок, просто замени их все на ничего. =) а потом опять json_decode
     
  12. vitaliy1970

    vitaliy1970 Новичок

    С нами с:
    5 дек 2013
    Сообщения:
    10
    Симпатии:
    0
    Все сделал. Просто воспользовался explode. Всем спасибо за участие.
     
  13. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    рукалицо
     
  14. pay-seven

    pay-seven Guest

    Спешить то куда в таком случае? Банально