Фрагмент используется для ввода часто используемого текста (т. е. фрагмента текста), чтобы сэкономить время при вводе нового текста. Если у вас уже есть текст, который нужно изменить, фрагмент не подойдет.
Для этого вы хотите что-то сделать с поиском и заменой и, в частности, используя Регулярное выражение, чтобы найти и сопоставить нужный текст.
Для приведенного выше примера процесс будет выглядеть примерно так:
Откройте панель замены, выбрав Find > Replace...
в меню или используя соответствующую клавишу для вашей операционной системы (она видна в меню, если вы ее не знаете).
В появившейся внизу панели убедитесь, что включены «Регулярные выражения» и «Выделение совпадений», а «Сохранить регистр» выключено. См. подсказки инструментов на кнопках.
Затем в Find What
введите текст, который вы хотите найти, например:
<text>(.*)</text>
Частью этого регулярного выражения является (.*)
, в котором говорится: «соответствуйте любой последовательности символов, включая отсутствие вообще, и захватывайте (сохраняйте) то, что вы выбрали».
Когда вы вводите текст, если вы посмотрите в буфер, вы увидите, что Sublime обрисовывает в общих чертах текст, который сопоставляется, поскольку мы включили «подсветку совпадений».
На панели Replace With
введите следующий текст:
<text><![CDATA[<audio preload="auto"><source src="https://www.mywebsite.com/sample.mp3"></audio>\1\?]]</text>
Волшебная часть здесь - это тот бит в конце, который говорит \1\?
; в котором говорится: «вставьте первое, что мы захватили, в поле поиска, за которым следует вопросительный знак»; остальной текст - это то, что вы указали в своем вопросе.
Если в вашем примере действительно не нужен вопросительный знак в конце текста (в вашем примере вы его добавили), вам не нужна часть \?
.
Теперь вы можете нажать Replace
или Replace All
, и все экземпляры <text>something</text>
будут заменены строкой замены, за исключением того, что не имеет значения, какая часть something
, потому что текст из исходной строки будет сохранен.
В зависимости от ваших реальных обстоятельств вам может потребоваться настроить это соответствующим образом (скажем, если ваш текст примера не очень хорошо выложен или что-то в этом роде).
Я рекомендую что-то вроде этого руководства (на которое я также ссылался выше), чтобы получить больше информации. глубокое понимание происходящего. В частности, это объясняет, почему для добавления вопросительного знака нужно использовать \?
, а не только ?
, что я полностью упустил из виду, потому что это отличное упражнение для читателя. ;)
person
OdatNurd
schedule
01.02.2017