Помогите пожалуйста составить регулярное выражение

B
На сайте с 20.06.2010
Offline
21
630

Имеем текстовый файл, содержащий некий русский текст, английский текст, текст в кавычках, текст в скобках, текст в html тегах, что-то типа:

текст (text) text "text" <br>/n</br>

Мне нужно удалить все английские слова, при этом не затрагивая слова в кавычках, в скобках и в тэгах. Какое регулярное выражение нужно ввести, чтобы это сделать? Пользуюсь NotePad++.

Спасибо за помощь.

siv1987
На сайте с 02.04.2009
Offline
427
#1

В кавычках и скобках если еще можно что-то придумать, то с тегами довольно сложно будет.

поиск (^|\s+)[a-zA-Z]+(\s+|$)

замена \1\2

B
На сайте с 20.06.2010
Offline
21
#2
siv1987:
В кавычках и скобках если еще можно что-то придумать, то с тегами довольно сложно будет.

поиск (^|\s+)[a-zA-Z]+(\s+|$)
замена \1\2

По вашему выражению не нашлось совпадений, но вообщем принцип понятен. Может подскажите как сделать поиск именно внутри скобок, т.е имеем например:

текст text

(цифры, пробелы, текст, text, текст)

текст text

как удалить анлийские буквы только внутри скобок?

Алексей Барыкин
На сайте с 04.02.2008
Offline
272
#3

Текста много?

Вложенность скобок 100%-но соблюдается?

Выражение написать можно, но оно споткнется об невалидную пежню вида:

Вася "любит" водку пить" не закусывая
siv1987
На сайте с 02.04.2009
Offline
427
#4
bootlegger:
По вашему выражению не нашлось совпадений

Текст: текст (text) text "text" <br>/n</br>

Совпадения по регулярке: текст (text) text "text" <br>/n</br>

B
На сайте с 20.06.2010
Offline
21
#5
Алексей Барыкин:
Текста много?
Вложенность скобок 100%-но соблюдается?

Да, текста много. Внутри первых скобок могут быть вложенные скобки

(Вася (любит) водку vodku (buhlo) пить не закусывая)

Мне нужно убрать только английские буквы. В принципе не критично, если удалятся вложенные скобки, их немного, но обязательно нужно оставить первые скобки. Видится ли вам решение такого вопроса?

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий