При замене с помощью регулярного выражения, как сохранить часть строки?
У меня
12.hello.mp3
21.true.mp3
35.good.mp3
.
.
.
так как имена файлов перечислены в текстовом файле.
Мне нужно заменить только те точки (.) infront чисел пробелом (например, 12.hello.mp3 = > 12 hello.mp3).
Если я имею регулярное выражение как "[0-9]", он также заменяет номер.
Пожалуйста, помогите мне.
Ответы
Ответ 1
Заменить
^(\d+)\.(.*mp3)$
с
\1 \2
Кроме того, в последних версиях notepad ++ он также примет следующее, которое также принимается другими редакторами IDE (например, продуктами JetBrains, такими как Intellij IDEA):
$1 $2
Это предполагает, что механизм сопоставления regex для блокнота ++ поддерживает группы. Режимом в основном является следующее: сопоставить цифры перед первой точкой как группу 1 и все после нее как группу 2 (но только если она заканчивается mp3)
Ответ 2
Используя базовый шаблон, хорошо описанный в принятом ответе, здесь приведен пример добавления class="odd"
и class="even"
к каждому элементу <tr>
в Notepad++ или любом другом редакторе, совместимом с регулярными выражениями:
Найти что: (<tr><td>)(.*?\r\n)(<tr><td>)(.*?\r\n)
Заменить на: <tr class="odd"><td>\2<tr class="even"><td>\4