Quantcast
Channel: Ru.Board
Viewing all articles
Browse latest Browse all 1030568

Регулярные выражения (263) /

$
0
0
extrasensory:
regist123, так я ровно по этому принципу и пытался сделать. Тут и есть три группы, три отдельных регулярки, которые по отдельности работают
1. Удаляем лишние пробелы перед знаками:

Код:
((\l) (\!|,|\)|\.|\:|\?|\;))
(?1$2$3:$4$5?$6;:)

2. Добавляем пробелы после символов: (после точки в конце предложения и после запятой в середине предложения):

Код:
\.(\u)|,(\l)|&(.)
(?1. $1:)(?2, $2:)(?3& $3:)

Создать один блок для всех случаев "добавить пробел ПОСЛЕ '?' '!' не смог, по отдельности, работают, а в один блок не понимаю:

Код:
\?(\u)|&(.)
(?1? $1:)


Код:
\!(\u)|&(.)
(?1! $1:)

3. Добавить пробел перед символами: Насколько я понимаю, необходим только один вариант, "пробел перед открывающей скобкой, если его нет". У меня выходит приерно так:

Код:
\((\u)
(?1 \($1:)

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


Viewing all articles
Browse latest Browse all 1030568

Trending Articles