【问题标题】:Text Manipulation - Add / Remove Spaces文本操作 - 添加/删除空格
【发布时间】:2012-04-02 12:35:52
【问题描述】:

我有一个包含多行相同大小的 txt 文件: (示例)

0123456 789  AND abcdefg hij

对于文件中的所有行,我想在 4th 字符之后添加一个空格,将以下字符向右移动 1 个字符。我还想从8th 字符中删除空格(添加初始空格后将是9th)。

我已经安装了 cygwin,所以可以选择 sed。 我还安装了 php 和 Visual Studio 2010。

对此的任何帮助将不胜感激。

【问题讨论】:

  • 请编辑您的问题以添加您想要的输出。

标签: text sed rows spaces


【解决方案1】:
sed 's/^\(....\)\(...\) /\1 \2/'

【讨论】:

    【解决方案2】:

    我最终只使用了 Cygwin -> VIM。

    在 Vim 编辑器中打开输入文件。

    转到第一行,使用“:1”的第一个字符

    使用“qa”开始录制(其中 a 是您的宏的名称)

    移动到行的第四个字符。

    按“insert”或“i”进入编辑模式

    输入你的空格字符。

    按 Esc。

    按“Shift+^”移动到第一个字符。

    移动到下一行的第一个字符。

    按 q 退出录制模式。

    现在可以随意播放您录制​​的任何内容。 如果你想玩一次按@a 如果您想重复 10 次,请输入 10@a (其中 a 是您之前定义的宏名称)

    删除空间遵循相同的步骤,除了您不需要进入编辑模式,只需转到要删除的空间并点击 x 并按照说明继续。

    【讨论】:

    • @Glenn 给出的 sed 解决方案不是不起作用吗? sed 通常是解决这类问题的更好方法。
    猜你喜欢
    • 1970-01-01
    • 2023-03-05
    • 1970-01-01
    • 2020-10-24
    • 1970-01-01
    • 1970-01-01
    • 2017-04-23
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多