2013-05-10 2 views
0

Я прокопал около полутора часов, пытаясь найти способ сделать это, но я далек от хорошего с регулярным выражением и ... ну, я сдаюсь. Я обращаюсь к своим сверстникам за помощью.Notepad ++ regex поиск и замена помощи

У меня есть большой текстовый файл, в котором есть куча xml-подобных значений, и мне нужно полностью удалить записи.

Все записи начинаются, например, с <junktag *> (Важно отметить звездочку, я думаю, потому что это оператор в регулярном выражении) и заканчивается </junktag>.

Например: Найти все экземпляры этого (кроме текста в середине, отличного от записей) и удалить его из файла.

<junktag *> 
randomgibberish=yes 
randomgibberese=no 
</junktag> 

Я пробовал:

\<junktag *>*\</junktag> 

Но не кажется, что работает правильно. Я думаю, мне нужен способ избежать операторов регулярных выражений.

+0

Как насчет ''.? –

+0

Ну, есть другие записи - например, , которые я не хочу заменять. Я хочу заменить только записи . – Ryan

+0

Вы использовали Google для выхода из операторов регулярных выражений? У него есть escape-символ (обратная косая черта). '\ *' в регулярном выражении означает буквальную звездочку. – doppelgreener

ответ

1

протестирован в Notepad ++ 6.3.2 с режимом dotall:

<junktag \*>.*?</junktag> 
+0

Как он уже сказал, он не хочет удалять, например. ' ...'. – Lukas

+0

Попытка google, какой режим dotall сейчас, но ваш второй пример, как отметил Лукас, не будет работать для моего приложения. – Ryan

+0

Обратите внимание на ленивого оператора (он называется так?) '?', Иначе это будет жадным и удалить все между первым '' и последним' ' – Lukas

Смежные вопросы