ne_viens
Advanced Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Код: ((\l) (\!|,|\)|\.|\:|\?|\;)) | Лишние скобки нам не надо: Код: (\l) (\!|,|\)|\.|\:|\?|\;) | , потом труднее их считать будет. Код: \.(\u)|,(\l)|&(.) (?1. $1:)(?2, $2:)(?3& $3:) | Тут что-то нагорожено, надо: (?1$1$2:) Код: \?(\u) (?1? $1:) \!(\u) (?1! $1:) | Эти можно добавить к .,& Код: \.(\u)|,(\l)|&(\S)|\!(\u)|\?(\u) (?1. $1:)(?2, $2:)(?3& $3:)(?4! $4:)(?5? $5:) | Код: Тут написано искать скобку "\(" с последующей малой буквой "(\l)" и букву запомнить. Eсли последовательность найдена "?1", заменить на пробел, скобку и сохранённую букву " \($1:" A надо искать малую букву и скобку и букву запомнить "(\l)\(" , потом заменить на сохранённую малую букву, пробел и скобку "(?1$1 \(:)" Осталoсь только объединить регексы через оператор ИЛИ "|" и в строке условной замены разобраться с нумерацией переменных в соответствии с скобками из регекса. Код: (\l) (\!|,|\)|\.|\:|\?|\;)|\.(\u)|,(\l)|&(\S)|\!(\u)|\?(\u)|(\l)\( (?1$1$2:)(?3. $3:)(?4, $4:)(?5& $5:)(?6! $6:)(?7? $7:)(?8$8 \(:) | И, если хочется совсем правильно, то строку замены пишем по логике "if, else if, else if, ..." , а не по "if, if, if, ..." Код: (?1$1$2:(?3. $3:(?4, $4:(?5& $5:(?6! $6:(?7? $7:(?8$8 \(:))))))) | , правда от этого сильно пострадает читаемость. | Всего записей: 1569 | Зарегистр. 01-11-2004 | Отправлено: 10:49 28-03-2018 | Исправлено: ne_viens, 10:52 28-03-2018 |
|