• sed相关


    1 global flag

    sed 's/xxx/xxx/' inputfile,如果没有带global flag g的话,匹配替换的只是inputfile中的每一行的第一个匹配项。如果带了g的话,才会全部都替换。

    s命令替换的是行里面匹配了前面的模式的部分,也就是说,s是部分替换。

    例子:MBA_students.txt
    102,Jason Smith,IT Manager
    103,Raj Reddy,Sysadmin
    104,Anand Ram,Developer
    105,Jane Miller,Sales Manager

    sed 's/a/A/' MBA_students.txt

    输出:
    102,JAson Smith,IT Manager
    103,RAj Reddy,Sysadmin
    104,AnAnd Ram,Developer
    105,JAne Miller,Sales Manager

    sed 's/a/A/' MBA_students.txt

    输出:

    102,JAson Smith,IT MAnAger
    103,RAj Reddy,SysAdmin
    104,AnAnd RAm,Developer
    105,JAne Miller,SAles MAnAger

    2 使用-i选项编辑之后替换原文件

    sed -i -e SCRIPT inputfile,这里一定要用-e,否则会出现unterminated substitute pattern。

    3 使用(..)进行子串匹配

    3.1 用于 获取

    匹配到的子串可以用1,2,3来获取。

    3.2 使得里面的模式为一个整体

    (abcd)*,匹配0个或者多个abcd。

    也就是说,()里面的是一个模式就可以了,然后多个的话,从前到后用1、2可以获取,其它的没有影响。

    4 多个模式连接

    多个模式连着写就是多个模式一起匹配,一起处理。如果不是一起匹配的话,用|,表示要么前者匹配,要么后者匹配,然后分别处理。

    例子 (error processing )(package |archive ),匹配“error processing package ”或者匹配“error processing archive ”。

    5 正则表达式匹配的长度是有限的

    正则表达式匹配输入行,匹配结果的长度是有限的,即子串的长度是有限的。它会用replacement来替换这个匹配上的子串。

  • 相关阅读:
    【Quartz】常用方法的使用方式(三)
    【Quartz】实现接口封装化(二)
    【Quartz】定时器初步实验(一)
    数据库和ado连接语句的使用总结
    PMP 德尔菲技术
    java 事务解释。
    防盗链--解释
    java月利率计算(等额本息贷款)
    java 日志的数据脱敏
    MDC 输出线程信息帮助定位问题
  • 原文地址:https://www.cnblogs.com/hustdc/p/6340588.html
Copyright © 2020-2023  润新知