在 sublime text 3 中交换行文本

Swap line text in sublime text 3

我不确定我是否应该在这个论坛上问这个问题,但我们开始吧:假设我有多个行,如下例所示:

something1:somethin2
something3:something4
something5:something6

如果假设我有大约 1000 行,我将如何将两个点之前的第一段文本与两个点之后的文本交换?

  • Ctrl+H
  • 查找内容:^([^:]+):(.+)$
  • 替换为::
  • 检查正则表达式
  • 取消区分大小写
  • 检查环绕
  • 全部替换

解释:

^           : beginning of line
  (         : start group 1
    [^:]+   : 1 or more character that is not colon
  )         : end group 1
  :         : literally a colon
  (         : start group 2
    .+      : 1 or more any character
  )         : end group 2
$           : end of line

替换:

          : content of group 2 (ie. everything that is after the colon)
:
          : content of group 1 (ie. everything that is before the colon)

给定示例的结果:

somethin2:something1
something4:something3
something6:something5