Как я могу отделить число от буквы, используя регулярное выражение Unix? - PullRequest
0 голосов
/ 04 октября 2018

Как я могу отделить число от буквы, используя регулярное выражение Unix?

Пример: 133748414T

Я пробовал это:

%s/^[0-9][0-9]*/^I/g

Спасибо

Ответы [ 2 ]

0 голосов
/ 04 октября 2018

Если оно всегда начинается с цифры:

%s/\ze\D/\t
0 голосов
/ 04 октября 2018

Вы можете использовать

%s/\v(\d)@<=(\D)@=/\t/g

Здесь,

  • \v - включает очень магический режим
  • (\d)@<= - позиция сразу слеватекущего местоположения должно предшествовать цифра
  • (\D)@= - позиция непосредственно справа от текущего местоположения должна сопровождаться нецифровой
  • \t - заменаявляется TAB-символом
  • g - заменяет все вхождения.

Если вам необходимо также добавить вкладки между нецифрами и цифрами, используйте

%s/\v(\d)@<=(\D)@=|(\D)@<=(\d)@=/\t/g

Альтернативный шаблон ветки (\D)@<=(\d)@= построен аналогично предыдущему.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...