gnu linux 下各种文本处理命令(像 sed、awk 等)所使用的正则表达式,你知道区别吗? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
lcj2class

gnu linux 下各种文本处理命令(像 sed、awk 等)所使用的正则表达式,你知道区别吗?

  •  
  •   lcj2class 2014 年 12 月 7 日 3202 次点击
    这是一个创建于 4157 天前的主题,其中的信息可能已经有所发展或是发生改变。
    第 1 条附言    2018 年 10 月 12 日
    5 条回复    2014-12-08 12:27:22 +08:00
    ayang23
        1
    ayang23  
       2014 年 12 月 7 日
    总结一下不错,BRE和ERE的区别经常让人头疼
    kidlj
        2
    kidlj  
       2014 年 12 月 7 日
    GNU Grep 中的 BRE 和 GRE 没有功能性上的差别,不过一些符号的使用需要注意(man grep):

    如果使用的是 BRE,那么 ?, +, {, |, (, ) 将失去其特殊意义,这些功能应该使用 \?, \+, \{, \|, \(, \)来替代。

    =====

    我也刚总结了一下BRE 和 GRE,然后通过实验来获知具体哪个工具程序使用的是 BRE,ERE还是PCRE。

    http://kidlj.com/wiki/regex.html
    lsmgeb89
        3
    lsmgeb89  
       2014 年 12 月 7 日
    awk, sed 最头疼了,加上各种 re 的区别,转义字符,单引号,双引号。每次写个 shell 都要折腾半天。楼主怎么不把 pre 加上,grep 也支持 pre 的。上次研究了半天写了一个表达式在 .net 里好用,在 pre 里面居然不行,查了下 pre 不支持变长的 zero-width negative look-behind assertion,晕过去。
    lcj2class
        4
    lcj2class  
    OP
       2014 年 12 月 8 日
    @lsmgeb89
    pre我很少用到,Lookahead也很少用,后面我会找机会对 linux 下的 RE 做个系统的介绍的。
    matrix67
        5
    matrix67  
       2014 年 12 月 8 日 via Android
    正则迷雾,这篇文章又讲。不过呢,正则本身太丑陋了
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     1647 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 36ms UTC 00:01 PVG 08:01 LAX 17:01 JFK 20:01
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86