NotePad ++ заменить проблему - PullRequest
13 голосов
/ 10 июля 2010

У меня есть файл с большим количеством редактирования текста с использованием NotePad ++.

например

<span class="italic">some text</span><span class="bold">another text or some text</span>

Я хотел бы использовать регулярное выражение NotePad ++ для замены

<span class"italic>some text</span> на <i>some text</i> и <span class="bold">another text or some text</span>на <b>another text or some text</b>

Однако я могу сопоставить текст span. Как заменить их на NotePad ++

Найти <span class="italic">text12312</span> и заменить его на <i>[a-zA-Z]*</i> на самом деле поставит "[a-zA-Z]*"текст в замененную строку, а не "text12312".

Ответы [ 3 ]

24 голосов
/ 10 июля 2010

<span class="italic">([^<]+)</span> => <i>\1</i>

<span class="bold">([^<]+)</span> => <b>\1</b>

[^<]+ соответствует одному или нескольким символам, кроме <, и скобки захватываютэто в группе № 1.\1 вставляет захваченный текст в строку замены.

3 голосов
/ 10 июля 2010

Используйте регулярное выражение, например: <span class="italic">([\w\s\d]+)</span>

и замену, например: <i>$1</i>

Важным моментом здесь является создание соответствующей группы для вашего текста, заключив ее в квадратные скобки, например ([\w\s\d]+), что соответствует одному или нескольким:

  • \w слово символов
  • \s пробелы
  • \d числовые символы

Теперь в строке замены укажите первую и единственную сопоставленную группу с $1.

0 голосов
/ 03 апреля 2013

пример из блокнота: пытаясь заменить этот текст: Тест 0x0145 с этим текстом: [0x0145] тест

enter image description here

...