如何使用Unix正则表达式将数字与字母分开?
示例:
示例:
133748414T
我尝试了这个:%s/^[0-9][0-9]*/^I/g
谢谢
您可以使用
%s/\v(\d)@<=(\D)@=/\t/g
在这里,
\v
- 启用非常魔法模式(\d)@<=
- 当前位置左侧紧邻的位置应该是数字(\D)@=
- 当前位置右侧紧邻的位置应该是非数字字符\t
- 替换为TAB字符g
- 替换所有出现的情况。如果您还需要在非数字和数字之间添加制表符,请使用
%s/\v(\d)@<=(\D)@=|(\D)@<=(\d)@=/\t/g
< p > (\D)@<=(\d)@=
替代分支模式的构建方式与前一个类似。
%s/\ze\D/\t
:%s/\D/\t&
- SergioAraujo
%s/\v(\d)@<=(\D)@=/\t/g
- Wiktor Stribiżew