LINUX.ORG.RU

История изменений

Исправление Psych218, (текущая версия) :

~ % LINE="foo M.Z. Bar Я.Г. Baz... Well, A.I."
~ % echo "$LINE" | sed -re 's/([A-ZА-Я])\.([A-ZА-Я])\./\1.\\,\2./g'
foo M.\,Z. Bar Я.\,Г. Baz... Well, A.\,I.

Так?

Идеально было бы перед исправлением ещё вывести все найденные выражения такого вида (чтобы не исправить лишнего)

echo "$LINE" | grep -o -E '([A-ZА-Я])\.([A-ZА-Я])\.'
M.Z.
Я.Г.
A.I.

Убрав -o, выделит прямо в тексте цветом.

В принципе можно сразу на sed сделать, но мне кажется, тут проще грепом этот этап.

Исходная версия Psych218, :

~ % LINE="foo M.Z. Bar Я.Г. Baz... Well, A.I."
~ % echo "$LINE" | sed -re 's/([A-ZА-Я])\.([A-ZА-Я])\./\1.\\,\2./g'
foo M.\,Z. Bar Я.\,Г. Baz... Well, A.\,I.

Так?