LINUX作业一(1)

试了很久,期间学到很多东西

本次作业:

 - :2,8s/\< four\>/4/g
 - :/\(a[bc]\{2}\)[^abc]\+\1
    请写出上面模式的作用

1.功能:

第2到8行的所有单词four替换为4, 像:four::这种可以, 但是fouraa这种不可以, 因为单词是fouraa不是four

BEFORE:
BEFORE
AFTER:
AFTER
2,8s 2~8替换
\< 匹配单词词首
> 匹配单词词尾
g 全部替换

2.功能:

找到开头和结尾都含有abb/abc/acb/acc,并且中间含有一个及以上不是a/b/c的字符

变量替换:一个a,然后bb/bc/cc/cb,然后中间加上多个不是a/b/c的字母,最后再加上\1,表示把第一个括号内的内容再这里显示多一次,其实就是实现开始和结尾的内容一样,然后中间不能出现a/b/c,但是要注意,abbabb这种不可以,中间要有字符才行
这里写图片描述






另一个作业

这里写图片描述

删除偶数行

  1. :g/^/+1d (先匹配所有行,每次都删除掉奇数行的下一行,然后下一行是偶数行又变成奇数行)
  2. :%s/\(^.*$\)\n^.*$/\1/g

删除奇数行

  1. :g/^/+d|m ( |m是移动到当前行,位置没变,但是会取消掉刚才global的标记)
  2. :%s/^.*$\n\(^.*$\)/\1/g

偶数行合并到奇数行

  1. 通过s命令奇数行和偶数行合并,以空格分割(变量替换)
    :%s/\(^.*$\)\n\(^.*$\)/\1 \2
  2. 标记所有行,通过g和s命令将第一行的换行符删除
    :g/\(^.*$\)\n\(^.*$\)/s//\1 \2

灵感来源..
下面这两句话是表达的一个意思,把well用good进行替换,上面那个同理,每次找到两行,进行标记然后删掉第一行的换行符,这样就可以合并起来了.
:%s/well/good/
:g/well/s//good/

1. 使用s命令演示

BEFORE:

这里写图片描述

AFTER:

这里写图片描述

2. 使用g, s命令演示

BEFORE:

这里写图片描述

AFTER:

这里写图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值