我知道在 vim 中,可以使用正则表达式来指定每行中要考虑排序的部分,以此来对文件进行排序:
:sort 'regex' r
能否将多个表达式结合起来?
这里有一个例子:
输入:
bar a 2
foo b 1
bar b 1
foo a 2
:按照字典序降序排序
foo b 1
bar b 1
bar a 2
foo a 2
使用“'[0-9]'”作为关键字对r进行排序。
bar a 2
bar b 1
foo b 1
foo a 2
期望的(可能是类似于:排序 '[A-Z]|[0-9]' r ?):
bar b 1
bar a 2
foo b 1
foo a 2
请注意,仅使用“sort”是无效的,因为其中的“a”和“b”会破坏数字的顺序。bar a 2
bar b 1
foo a 2
foo b 1
除了VIM之外,还可以接受其他替代方案,但为了满足好奇心,我想知道在VIM内是否实际可行(如果是肯定的话,如何实现 ;-)
非常感谢, 敬礼
sort '[0-9]' r
的结果没有被正确粘贴。结果应该是不同的。 - Bireisort '[0-9]' r
(假定第一个表示初始状态),而不是sort '[a-z]' r
,第三个是针对sort '[a-z]' r
(再次假定第一个是初始状态,且我们没有先运行其他排序),而不是 `sort '[0-9]' r。我想。也许你在 Birei 的评论后编辑了第二篇,但本意是编辑第三篇?而“EXPECTED”应该与“INTENDED”或“DESIRED”相近? - ruffin