Используя регулярное выражение, я хочу проанализировать строку типа «DOCID = 1234567 THIS IS TEST» и удалить оставшуюся строку после чисел.
Как я могу сделать это с помощью редактора VIM?
В Perl:
$str =~ s/(= \d+).*$/$1/;
В php:
$str = preg_replace('/(= \d+).*$/', "$1", $str);
Это сделает работу:
:%s/\d\+\zs.*
Пояснение:
%
s
\d\+
\zs
.*
В VIM, в командном режиме (нажмите ESC), напишите:
:s/\([^0-9]\+[0-9]\+\).*/\1/
Это сделает работу.Если вы хотите сделать все возможные замены, то:
:s/\([^0-9]\+[0-9]\+\).*/\1/g
в Яве string.replaceFirst("(= \\d+).*$","\\1");
string.replaceFirst("(= \\d+).*$","\\1");