• grep、sed、awk、perl、js、vim等对正则表达式的支持的差别


    grep、sed、awk、perl等对正则表达式的支持的差别


    grep 2.5.1 egrep 2.5.1 sed 3.02
    sed 4.07
    awk 3.1.1 perl 5.8.0 vim 6.1 JavaScript ??
    转义
    行头 ^ ^ ^ ^ ^ ^ ^
    行尾 $ $ $ $ $ $ $
    n个 {n} {m,n} {m,} {,n} {n} {n} {n} {n}或{n} 仅定义 –posix 或 –re-interval有效(要表达}和{,得用\{和\} 没有定义–posix或–re-interval时,不能用{n}的语法, }{和}{同义 {n} {n} {n}
    {0,} * * * *或*, (要表达*,得用\*) * * *
    {1,} + + + +或+, (要表达+, 得用\+) + + +
    {0,1} ? ? ? ?或?, (要表达?, 得用\?) ? ? ?
    任意字符 . . . . 含 . . /s修饰后则含 . 除 . 除
    (pat) 匹配并获结果 (pat) (pat) (pat) (pat)或(pat) (要表达括号,用\( \) ) (pat) (pat) (pat)
    (?:pat) 匹配但不获结果 不支持 不支持 不支持 不支持 (?:pat) 不支持 (?:pat)
    (?=pat) 等于预查 不支持 不支持 不支持 不支持 (?=pat) 不支持 (?=pat)
    (?!pat) 不等预查 不支持 不支持 不支持 不支持 (?!pat) 不支持 (?!pat)
    | 或 | | | |或| (要表达|,得用\|) | | |
    其中任意字符 [xyz] [xyz] [xyz] [xyz] [xyz] [xyz] [xyz]
    [.ch.] [=ch=] 不支持 不支持 [.ch.] 不支持 不支持 不支持 不支持
    单词边界     不支持  不支持 
    非单词边界 B B B B 不支持 B 不支持 B
    单词左右边界 <> < > < > < > 不支持 (><和><和\>\<同义 不支持(><和><同义 < > 不支持(><和><同义
    控制字符 /cx 不支持 不支持 cx 不支持 cx 不支持 cx
    数字d 不支持 不支持 不支持 不支持 d d d
    非数字D 不支持 不支持 不支持 不支持 D D D
    换页 f 不支持 不支持 高版本支持 f f 另义 f表示文件名字符 f
    换行 不支持 不支持 不支持
    回车 不支持 不支持
    空白 s 不支持 不支持 不支持 不支持 s s s
    非空白 S 不支持 不支持 不支持 不支持 S S S
    制表符 不支持 不支持 高版本支持
    垂直制表符 v 不支持 不支持 高版本支持 v v 另义 v表示very magic v
    单词字符 w [A-Za-z0-9_] w w w 不支持 w w w
    非单词字符 W [^A-Za-z0-9] W W W 不支持 W W W
    xn 16进制 不支持 不支持 高版本支持 xn xn 另义 x表示[0-9A-Za-z] xn
    八进制 不支持 不支持 不支持 不支持
    后向引用 仅取结果可用 仅取结果可用
    [:alnum:] 字母和数字 [:alnum:] [:alnum:] [:alnum:] [:alnum:] [:alnum:] [:alnum:] 不支持
    [:alpha:] 字母 [:alpha:] [:alpha:] [:alpha:] [:alpha:] [:alpha:] [:alpha:] 不支持
    [:cntrl:] 控制字符 [:cntrl:] [:cntrl:] [:cntrl:] [:cntrl:] [:cntrl:] [:cntrl:] 不支持
    [:digit:] 数字 [:digit:] [:digit:] [:digit:] [:digit:] [:digit:] [:digit:] 不支持
    [:graph:] 可打印字符(不含空格) [:graph:] [:graph:] [:graph:] [:graph:] [:graph:] [:graph:] 不支持
    [:lower:] 小写 [:lower:] [:lower:] [:lower:] [:lower:] [:lower:] [:lower:] 不支持
    [:print:] 可打印字符(含空格) [:print:] [:print:] [:print:] [:print:] [:print:] [:print:] 不支持
    [:punct:] 标点 [:punct:] [:punct:] [:punct:] [:punct:] [:punct:] [:punct:] 不支持
    [:space:] 空格 [:space:] [:space:] [:space:] [:space:] [:space:] [:space:] 不支持
    [:upper:] 大写字母 [:upper:] [:upper:] [:upper:] [:upper:] [:upper:] [:upper:] 不支持
    [digit:] 16进制数字 [digit:] [digit:] [digit:] [digit:] [digit:] [digit:] 不支持
    [:return:] 不支持 不支持 不支持 不支持 不支持 [:return:] 不支持
    [:tab:] 不支持 不支持 不支持 不支持 不支持 [:tab:] 不支持
    [:escape:] 不支持 不支持 不支持 不支持 不支持 [:escape:] 不支持
    [:backspace:] 不支持 不支持 不支持 不支持 不支持 [:backspace:] 不支持

  • 相关阅读:
    C#综合揭秘——Entity Framework 并发处理详解
    Apache2.2+Tomcat7.0整合配置详解
    python操作excel
    NameError: name ‘time‘ is not defined
    ping命令最实用的
    github使用方法
    数字证书
    网络编程
    不辣的皮特
    msdn上的“索引器”(indexer)示例
  • 原文地址:https://www.cnblogs.com/timssd/p/4753706.html
Copyright © 2020-2023  润新知