- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Что делать, если ваша email-рассылка попала в спам
10 распространенных причин и решений
Екатерина Ткаченко
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Коллеги, добрый вечер!
Прошу помощи.
Имеется вот такой текст:
консалт лтд
консалт парадигма
консалт премиум
консалт продакшн
консалт строй
консалт
Необходимо привести данный текст вот в такой вид:
консалт лтд
консалт парадигма
консалт премиум
консалт продакшн
консалт строй
консалт -лтд -парадигма -премиум -продакшн -строй
То есть к слову (или словосочетанию), имеющему полное вхождение в какую либо строку (в данном случае "консалт") необходимо добавить остаток данной строки за вычетом "полного вхождения". Желательно добавив знак минус ("-") перед каждым словом.
Подскажите, может есть какой-нибудь скрипт, который решит мою проблему, а то уже голову сломал как ее решить.
Можете словами описать отличительные признаки для слова (или словосочетания), имеющего полное вхождение? :)
Давайте попробую.
6-ая строка полностью входит в строки 1, 2, 3, 4, 5, 6.
Можно ли какими-либо способами дать машине задачу:
1. Найди строки (в нашем случае 1, 2, 3, 4, 5), имеющие частичное вхождение целой строки (6).
Фото сверху.
2. Скопируй у каждой полученной строки весь текст, идущий следом за "полным вхождением" (в нашем случае текст в строках 1, 2, 3, 4, 5)
3. Вставь скопированный текст в строку с полным вхождением, поставив знак "-" (минус) перед каждым скопированным словом:
Вот.
То есть, это слово или максимально длинное словосочетание, с которого начинаются все строки?
Подскажите, может есть какой-нибудь скрипт, который решит мою проблему, а то уже голову сломал как ее решить.
а как вы её пытаетесь решить? Найти готовый скрипт? вряд ли такой есть.
Скиньте пример такого файла с данными.
Создаете на своем компьютере файл с расширением .htm, затем копируете в него ниже приведенный код и открываете в браузере (проверял в Firefox, Chrome). Вставляете свои данные (список фраз), нажимаете кнопку и получаете результат.
Или так
wwwwww, jkm, Коллеги, огромное спасибо за Ваши скрипты.
Оба скрипта рабочие для данного вопроса, выдают следующее:
Вопрос, заданный в начале данной темы РЕШЕН. Но есть небольшая загвоздка.
Если усложнить задачу. И дать скрипту задачу на несколько фраз, получаем:
При усложнении задачи, скрипт от jkm прошел на 100%. Но, усложним задачу еще чуть-чуть..
Имеем 3 строки:
консалт строй плюс
консалт строй
консалт
Возможно ли как-то видоизменить скрипт, чтобы получить на выходе:
консалт строй плюс
консалт строй -плюс (добавляется слово -плюс, т.к. данная строка (№2) "консалт строй" полностью повторяет и входит целиком в строку №1
консалт -строй -плюс (добавляются слова -строй -плюс, т.к. строка №3 полностью входит в строки №1 и №2)
P.S. возможно решение строки №3 и так:
консалт -строй -плюс -строй
Сейчас, данная задача отображается таким образом:
Буду очень признателен, если найдется решение моей проблемы :)
Глубокоуважаемый, jkm!
Большое спасибо за Вашу поддержку в моем вопросе.
Не хочу показаться слишком наглым и настойчивым, просто сам в этом очень-очень плохо разбираюсь, а знакомых специалистов такого уровня у меня совсем нет.
Есть небольшой нюанс.
В данный момент скрипт не обрабатывает промежуточные значения.
--------------------
Задача:
консалт строй плюс
консалт строй
консалт медиа групп (входит в "консалт", но не входит в "консалт медиа")
консалт медиа
консалт
--------------------
Результат:
консалт строй плюс
консалт строй -плюс
консалт медиа групп
консалт медиа
консалт -строй -плюс -медиа -групп -медиа
--------------------
Очень прошу помочь.
Сей баг можно объявить фичей :)
Там изначально в шаблоне кусок $\s+ захватывал любое количество подряд идущих пробелов и переносов строк.
В результате текст обрабатывался как если бы пустых строк не было вовсе.
Решается разделением блоков строками с любым символом.
Например:
консалт строй плюс
консалт строй
;
консалт медиа групп
консалт медиа
;
консалт
Вообще, такое поведение легко исправить, заменив $\s+ на \r?\n. Тогда поиск будет останавливаться на пустых строках, как положено.