• Объявления

    • dinox

      Закрытый раздел разработчиков   21.08.2017

      У нас на форуме существует закрытый раздел для разработчиков в котором мы обсуждаем нюансы работы на нашем форуме, в каталоге дополнений и другие моменты которые интересны в большинстве случаев только разработчикам. На данный момент существует лишь 2 условия для попадания:
      1. Наличие промодерированного дополнения в нашем каталоге  2. Отсуствие варезной деятельности 
      Если эти правила выполнены, пишите запрос @ArtemPitov на попадание в раздел разработчиков
Webracer

Поиск по регулярным выражениям

Рекомендуемые сообщения

Webracer    7

При написании xml-файла для vQmod, столкнулся с необходимостью замены части кода, который содержит несколько строк, пробелы. Как в этом случае нужно задать поиск?

<search position="replace"><![CDATA[]]></search>

Как вариан воспользоваться регулярными выражениями, только не могу никак в этом разобраться. Может кто подскажет. Вот код который нужно найти и заменить:

<!-- AddThis Button BEGIN -->
          <div class="addthis_default_style"><a class="addthis_button_compact"><?php echo $text_share; ?></a> <a class="addthis_button_email"></a><a class="addthis_button_print"></a> <a class="addthis_button_facebook"></a> <a class="addthis_button_twitter"></a></div>
          <script type="text/javascript" src="//s7.addthis.com/js/250/addthis_widget.js"></script>
          <!-- AddThis Button END -->

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
RGB    978

Достаточно просто скопировать целиком этот кусок кода и вставить в CDATA, если в шаблоне никто там лишних переносов не делал, то должно заменить, а чтобы уж наверняка - можно заменить 

<!-- AddThis Button BEGIN -->

на

<!-- AddThis Button BEGIN 

и

<!-- AddThis Button END -->

на

 AddThis Button END -->

первое, что пришло в голову :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Webracer    7

Полностью кусок кода я пробовал вставлять, но не получается ничего.

А ваш пример я не понял :(

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
1nSane    35

У самого аналогичная проблема, а авторов модов все работает, а я пытаюсь вставить несколько строк - не видит.

 

А пример человек показал "интересный" = сломать код.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
RGB    978

Почему сломать? Это называется закомментировать, почему это лучше удаления или замены ненужных строк - в случае конфликтов с другими вкмодами вы сможете открыть исходный код страницы и увидеть суть проблемы

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
vetalreal    1

При написании xml-файла для vQmod, столкнулся с необходимостью замены части кода, который содержит несколько строк, пробелы. Как в этом случае нужно задать поиск?

<search position="replace"><![CDATA[]]></search>

Как вариан воспользоваться регулярными выражениями, только не могу никак в этом разобраться. Может кто подскажет. Вот код который нужно найти и заменить:

<!-- AddThis Button BEGIN -->
          <div class="addthis_default_style"><a class="addthis_button_compact"><?php echo $text_share; ?></a> <a class="addthis_button_email"></a><a class="addthis_button_print"></a> <a class="addthis_button_facebook"></a> <a class="addthis_button_twitter"></a></div>
          <script type="text/javascript" src="//s7.addthis.com/js/250/addthis_widget.js"></script>
          <!-- AddThis Button END -->

 

Для этого нужно указать в поиске первую строку фрагмента и добавить атрибут offset со значением количества дополнительных строк:

...
<operation info="Multi-line Replace">
  <search position="replace" offset="3"><![CDATA[
    <!-- AddThis Button BEGIN -->
    ]]></search>
  <add><![CDATA[]]></add>
</operation>
...

См. пример на офф. сайте https://code.google.com/p/vqmod/wiki/Examples.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Webracer    7

vetalreal, спасибо за подсказку!

Нигде в мануалах не встречал опции offset. Так и думал, что есть что-то подобное, так как без неё как-то всё непродуманно выглядело.

Ещё раз спасибо!

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти


  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу