найти и заменить часть текста - PullRequest
0 голосов
/ 12 июня 2009

Я пытаюсь выполнить поиск и замену, используя GREP / Regex

Вот что я ищу

<div align="center" class="orange-arial-11"><b>.+<br>

Я хочу удалить теги <b>, <br> и поместить вокруг них теги <h3>. + Находит.

Но я не могу получить то, что. + Находит, чтобы остаться, когда он делает замену.

Например, я хочу найти это

<div align="center" class="orange-arial-11"><b>This is the section I want intact<br>

чтобы перейти на это

<div align="center" class="orange-arial-11"><h3>This is the section I want intact</h3>

Любая помощь приветствуется.

Ответы [ 3 ]

3 голосов
/ 12 июня 2009

Используйте sed вместо grep:

# Modify the file in-place
sed -i~ 's|\(<div align="center" class="orange-arial-11">\)<b>\(.\+\)<br>|\1<h3>\2</h3>|' the-file
1 голос
/ 12 июня 2009

Это зависит от того, какую именно систему вы используете, но если вы поместите что-то в круглые скобки, вы можете обратиться к ней позже

Так что это может быть что-то вроде

s/<b>(.+)<br>/<h3>\1<\/h3>/
0 голосов
/ 12 июня 2009

В TextWrangler:

поиск:

<div align="center" class="orange-arial-11"><b>(.+?)<br>

заменить на:

<div align="center" class="orange-arial-11"><h3>\1</h3>

'\ 1' будет заменено строкой, совпадающей внутри скобок в шаблоне поиска.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...