Как заменить (или заэкранировать) символ ' ?

Тема в разделе "Функции поиск-замены и регулярные выражения", создана пользователем Dydaevskiy, 26 сен 2019.

  1. Dydaevskiy

    Dydaevskiy Member Пользователи

    Регистрация:
    25 фев 2019
    Сообщения:
    67
    Город:
    Сумы
    Вот что имеем до:
    title: 'Microsoft запускает 'Fluid Framework' для преобразования традиционного документа Office'
    Вот что нужно получить после:
    title: 'Microsoft запускает \'Fluid Framework\' для преобразования традиционного документа Office'

    Простой заменой (или re: ) конечно можно. Но мне не известно сколько раз может быть вставлен данный символ.
     
    Последнее редактирование: 27 сен 2019
  2. Kreol

    Kreol Модератор Команда форума Модератор

    Регистрация:
    6 янв 2013
    Сообщения:
    2.666
    Приветствую!
    По всей видимости вы формируете xml
    Для замены всех значений достаточно в поиск замене поставить '|\'
    Если нужно менять в рамках какого-то куска кода, то тут нужно больше данных (как входных, так и тех что вы с этими данными делаете и для чего это нужно)
     
    Dydaevskiy нравится это.
  3. Dydaevskiy

    Dydaevskiy Member Пользователи

    Регистрация:
    25 фев 2019
    Сообщения:
    67
    Город:
    Сумы
    По коду я часто сталкиваюсь с тем что есть необходимость производить замены тех символов в которых они находятся... (сори за сумбур).
    Вот пример того что нужно получить:
    'Microsoft запускает \'Fluid Framework\' для преобразования традиционного документа Office'
    Нужно заэкранировать или заменить кавычки которые могут располагаться в любом количестве в тексте который находится в кавычках.
    Пример два:
    Ссылки недоступны для гостей
    Как найти все / в нутри ссылки что бы стало так:
    Ссылки недоступны для гостей

    В обоих случаях мне не известно сколько может стоять символов котрые нужно заэкранировать.

    Программа очень мощная и боеая, но пока не нашел в мануалах и форуме как это можно осущствить в поиске и замене.
    Спасибо за Ваш ответ.
     
    Последнее редактирование: 27 сен 2019
  4. Kreol

    Kreol Модератор Команда форума Модератор

    Регистрация:
    6 янв 2013
    Сообщения:
    2.666
    Вы опять таки не написали, в каком контекстек данные, Если это построчный текст, типа
    Ссылки недоступны для гостей
    Ссылки недоступны для гостей
    Ссылки недоступны для гостей
    Ссылки недоступны для гостей
    то это 1 решение
    если это попадается в массиве огромного текста, при этом нет явных границ как это найти *начало и конец, то тут все сложно.
    Нужно видеть начальный текст
     
  5. Dydaevskiy

    Dydaevskiy Member Пользователи

    Регистрация:
    25 фев 2019
    Сообщения:
    67
    Город:
    Сумы
    Сейчас мне нужно разобраться с этим:
    title: 'Microsoft запускает 'Fluid Framework' для преобразования традиционного документа Office'
    Вот пример того что нужно получить:
    'Microsoft запускает \'Fluid Framework\' для преобразования традиционного документа Office'
    Как и писал в первом сообщении. Но мне не известно сколько может быть кавычек которые нужно заэкранировать. Причем крайние кавычки ' должны остаться не заэкранированными.

    Поиск и замену мне нужно промизвести в [FINAL_REPLACE()]. Спасибо
     
  6. Kreol

    Kreol Модератор Команда форума Модератор

    Регистрация:
    6 янв 2013
    Сообщения:
    2.666
    это у вас в 1 границе есть?
    или это в куске текста?
    приведите контекст
     
  7. Dydaevskiy

    Dydaevskiy Member Пользователи

    Регистрация:
    25 фев 2019
    Сообщения:
    67
    Город:
    Сумы
    В тексте, текст уже писал. Спасибо
     
  8. Kreol

    Kreol Модератор Команда форума Модератор

    Регистрация:
    6 янв 2013
    Сообщения:
    2.666
    вы написали 1 строку с которой работаете, а как выглядит полностью текст непонятно.
    как выглядят другие текста тоже неясно.
    Непонятно как цепляться для замен
     
    Dydaevskiy нравится это.
  9. Dydaevskiy

    Dydaevskiy Member Пользователи

    Регистрация:
    25 фев 2019
    Сообщения:
    67
    Город:
    Сумы
    Прошу прощение, через мин 40 пришлю часть текста. Спасибо
     
  10. Dydaevskiy

    Dydaevskiy Member Пользователи

    Регистрация:
    25 фев 2019
    Сообщения:
    67
    Город:
    Сумы
    ---
    title: title: 'Microsoft запускает 'Fluid Framework' для преобразования традиционного документа Office'
    metadata:
    description: 'Компания хочет, чтобы вы отказались от бессрочной лицензии, чтобы она могла приносить вечный доход.'
    date: '2019-03-12 09:00'
    media_order: poster.jpg
     
  11. Dydaevskiy

    Dydaevskiy Member Пользователи

    Регистрация:
    25 фев 2019
    Сообщения:
    67
    Город:
    Сумы
    Получается выше приведенный формат текста встречается в каждом документе. Спасибо за Ваше время, помощь и наверное нервы.
     
  12. Kreol

    Kreol Модератор Команда форума Модератор

    Регистрация:
    6 янв 2013
    Сообщения:
    2.666
    это html страница? я правильно понимаю?
    Можно взять границей отдельной эти данные?
     
  13. Dydaevskiy

    Dydaevskiy Member Пользователи

    Регистрация:
    25 фев 2019
    Сообщения:
    67
    Город:
    Сумы
    Да, все верно
     
  14. Dydaevskiy

    Dydaevskiy Member Пользователи

    Регистрация:
    25 фев 2019
    Сообщения:
    67
    Город:
    Сумы
    Прошу прощение, не это не страница, это уже полученный вывод обработанного кода. В котором нужно произвести поиск и замену.
     
  15. Kreol

    Kreol Модератор Команда форума Модератор

    Регистрация:
    6 янв 2013
    Сообщения:
    2.666
    1) вариант
    пересоздайте границы так
    1 граница до title
    2 граница сам title и тогда примените поиск/замену
    3 все что после title
    2) вариант
    обработка через php
    3) вариант руками или через ексель, если это возможно
     
    Dydaevskiy нравится это.
  16. Dydaevskiy

    Dydaevskiy Member Пользователи

    Регистрация:
    25 фев 2019
    Сообщения:
    67
    Город:
    Сумы
    То есть программа даже ULITIMATE версии этого сделать не позволит в [FINAL_REPLACE()] ?
     
  17. Kreol

    Kreol Модератор Команда форума Модератор

    Регистрация:
    6 янв 2013
    Сообщения:
    2.666
    для данной проблемы версия не имеет значения.
    В чем проблема пересобрать проект?
     
    Dydaevskiy нравится это.
  18. Dydaevskiy

    Dydaevskiy Member Пользователи

    Регистрация:
    25 фев 2019
    Сообщения:
    67
    Город:
    Сумы
    В том что это уже готовый проект и осталось только навести порядок с поиском и заменой.
    Ясно, в общем не хватает этой функциональности очень сильно. Буду думать как победить. Спасибо.
     
  19. Dydaevskiy

    Dydaevskiy Member Пользователи

    Регистрация:
    25 фев 2019
    Сообщения:
    67
    Город:
    Сумы
    Спасибо за то что дали мне направление. Все получилось.
     
    Root нравится это.

Поделиться этой страницей