Блокнот ++ Поддержка регулярных выражений
Я сейчас пытаюсь найти
\000\000\001\031704_news_release.pdf
Что я успешно сделал с
000\\000\\\d\d\d\\
Я вполне уверен, что я делаю что-то здесь не так, потому что я хочу заменить на возврат (\r), но когда я запускаю замену, последний набор из 3 цифр стирается.
Таким образом, желаемый результат будет
\000\000\001\
031704_news_release.pdf
Для справки я запускаю следующее, как мой заменить в настоящее время
000\\000\\\1\2\3\\\r
Есть идеи?
2 ответа
Что ж, вы не захватили ничего для хранения, чтобы на него ссылались \ 1 и \ 2 и \ 3, поэтому вы, похоже, теряете вещи, когда пытаетесь обратиться к ним в замене.
Используйте круглые скобки (круглые скобки) в разделе поиска вокруг того, что вы хотите оставить для \ 1 и \ 2 и \ 3, вот так
Не совсем понятно, что вы хотите сделать, но вот пример
И вы не захотите просто \ r в замене... я включил эту вашу ошибку в пример, и она каким-то образом сделала новую строку. Но вы должны делать либо \ n (конец строки unix), либо \ r \ n (конец строки windows), чтобы создать новую строку / разделитель строк / разделитель строк.
И если вы хотите быть более кратким с вашим регулярным выражением
НАХОДИТЬ: (0{3}\\){2}\d+\\
ЗАМЕНА: $0\r\n
Обратите внимание, что вы можете легко использовать $ 0 в своем примере регулярного выражения. Это означает, что все соответствует
Так что для вас, вы могли бы сделать
НАХОДИТЬ: 000\\000\\\d\d\d\\
ЗАМЕНА: \0\r\n
Попробуйте это для своего поискового текста:
000\\000\\(\d+)\\
или это 000\\000\\(\d\d\d)\\
И это для замены текста:
000\\000\\\1\\\r
или же 000\\000\\\1\\\n
Чтобы заменить текст в регулярном выражении, вам нужно определить, что вы хотите заменить. Вы просто пропустили скобки. Скобка идентифицирует вложенное регулярное выражение как текст "захвата". Посмотрите здесь для более подробного объяснения: http://www.regular-expressions.info/brackets.html
Кроме того, я рекомендую взглянуть на бесплатный инструмент регулярных выражений под названием Expresso от Ultrapico: http://www.ultrapico.com/Expresso.htm