> только я в регекстпах ноль.....
А вообще, для повседневного бытового использования про регэкспы особо много
знаний и не требуется. Нужно запомнить буквально несколько вещей:
*,+,? --- модификаторы, относящиеся к предыдущему сиволу или
группе символов и обозначающие соответственно `ноль или несколько',
`один или несколько', `ноль или один'.
. --- любой символ. Например, делаем man fetchmail и хотим узнать
про все, что связано с удалением сообщений с сервера. Набираем:
/message.*delet
Уже вот эти простые вещи здорово облегчают жизнь!
[] --- позволяет определить диапазон значениий. Вот так найдем в Vim'е
все цифры в документе:
/[0-9] или /[0123456789]
и все числа:
/\<[0-9]\+\.\?[0-9]*\>
\<,\> --- обозначают границы слов в вышеприведенном примере.
^,$ --- начало строки и ее конец:
/^[0-9]\+
ищет строку, начинающуюся с цифры, а
/^[0-9]\+$
строку, состоящую только из цифр.
Если хотим искать строки, содержащие метасимволы, то их надо экранировать:
/[0-9]\+\.[0-9]\+
так найдем все числа с плавающей точкой.
Н, и, наконец, самый рулез --- обратные ссылки! Если кусок выражения
заключить в круглые скобки, то потом можно ссылаться на эти куски.
:%s/\([0-9]\+\)\.\([0-9]\+\)/\1,\2
так заменим точку в числах на запятую.
Все просто! ;-)
--
Andrey V. Kiselev
Scientific Research Center for Ecological Safety Russian Academy of Sciences
Office phone: +7 812 2307834 ICQ UIN 26871517
Registered Linux user number 169907
|