Регулярное выражение для выбора от X до Y - PullRequest
2 голосов
/ 25 сентября 2011

У меня есть следующий HTML:

<Some Html above....../>
<!--Template Start -->
<div>
<p>Some text</p>
...
<div>
<!--Template End -->
<Some Html below/>

Теперь, как я могу написать регулярное выражение для соответствия всему тексту от Начало шаблона до Конец шаблона

здесь говорится, что notepad ++ использует движок Scintilla. Блокнот ++ не жадные регулярные выражения

Ответы [ 3 ]

9 голосов
/ 25 сентября 2011
<!--Template Start -->(.*?)<!--Template End -->

s модификатор должен быть включен.

2 голосов
/ 25 сентября 2011

Предполагается, что вложенных шаблонов нет:

<!--Template Start -->(.*?)<!--Template End -->

Примечание для включения режима DOT_ALL, чтобы также охватывать новые строки.

0 голосов
/ 27 сентября 2011

Обидно, но Notepad ++ не поддерживает сопоставление новых строк (\ r \ n) изначально в режиме регулярных выражений.Он поддерживает сопоставление новых строк только в расширенном режиме.Однако он поддерживает вставку новых строк в обоих режимах.

Чтобы достичь желаемых результатов, вы можете обойти это:

  1. Удалить все новые строки в расширенном режиме (заменить \r\n ничем)таким образом, у вас есть одна строка.
  2. Выполните манипуляции с регулярным выражением в режиме регулярного выражения.
  3. Добавьте новые строки обратно в расширенном режиме (например, замените <div> на <div>\r\n и т. д.) или режиме регулярного выражения.

Я где-то читал, что плагин PythonScript для N ++ добавляет лучшую поддержку регулярных выражений, но я не проверял это.

...