• 正则表达式


    一.正则表达式

        正则表达式就是处理字符串的方法,它是以行为单位来进行字符串的处理行为,正则表达式通过一些特殊符号的辅助,可以让用户清一达到查找,删除,替换某特定字符串的处理程序。

        正则表达式基本上是一种表示法,只要工具程序支持这种表示法,那么该工具程序就可以用来作为正则表达式的字符串处理之用。

     

    二.语系对正则表达的影响

        由于不同语系编码数据并不相同,会造成数据选取结果的区别。所以,使用正则表达时,需要特别留意当时的语法环境为何,否则可能会发现与别人不相同的选取结果。而为了避免这些所造成的英文与数字的选取问题,就需要了解一些特殊符号

        特殊符号    代表意义

        [:alnum:]       代表英文大小写字符及数字,即0-9,A-Z,a-z

        [:alpha:]       代表任何英文大小写字符,即A-Z,a-z

        [:blank:]       代表空格健与Tab键

        [:cntrl:]       代表键盘上面的控制按键,即包括CR,LF,Tab,Del等

        [:digit:]       代表数字而已,即0-9

        [:graph:]       除了空格符外的其他所有按键

        [:lower:]       代表小写字符,即a-z

        [:print:]       代表任何可以被打印出来的字符

        [:punct:]       代表标点符号,即"'?!;:#$

        [:upper:]       代表大写字符,即A-Z

        [:space:]       任何会产生空白的字符,包括空格键CR等

        [:xdigit:]      代表十六进制的数字类型,因此包括0-9,A-F,a-f的数字与                  字符

     

    三.grep的一些高级参数

    grep

    格式: grep [-acinv] [-A] [-B] '查找字符串' filename

    -a:将binary文件以text文件的方式查找数据

    -c:计算找到查找字符串的次数

    -i:忽略大小写的不同

    -n:输出行号

    -v:反向选择

    -A:后面可加数字,为after的意思,除了列出该行外,后续的n行也列出来

    -B:后面可加数字,为befer的意思,除了列出该行外,前面的n行也列出来

     

    基础正则表达式字符

    RE字符

    意义

    ^word

    待查找字符串在行首

    Word$

    待查找字符串在行尾

    .

    以表一定有一个任意的字符

    转义字符,将特殊符号的特殊意义去除

    *

    重复0到无穷多个的前一个字符

    [list]

    从字符集合的RE字符里面找出想要选取的字符

    n1-n2

    从字符集合的RE字符里面找出想要选取的字符范围

    [^list]

    从字符集合的RE字符里面找出不要的字符串或范围

    {n,m}

    连续n到m个的前一个RE字符,若为{n}则是连续n个的前一个RE字符,若为{n,}则是连续n个以上的前一个RE字符

     

     

     

    四.sed工具

        sed 【-nefr】 【动作】

    -n:使用安静模式,在一般的sed用法中,所有来自STDIN的数据一般都会被列到屏幕上,但如果加上-n参数后,则只有经过sed特殊处理的那一行才会被列出来

    -e:直接在命令行模式上进行sed动作编辑

    -f:直接将sed的动作写在一个文件内,-f filename则可以执行filename内的sed动作

    -r:sed动作支持的是扩展型正则表达式的语法

    -i:直接修改读取的文件内容,而不是由屏幕输出

    动作说明: 【n1【,n2】】function

    n1,n2:未必会存在,一般代表选择动作的行数,距离来说,如果我的动作时需要在10-20行之间进行的,则10,20【动作行为】

    function有下面这些参数:

    a:新增,a后面可接字符串,而这些字符串会在新的以行出现

    c:替换,c后面可接字符串,这些字符串可以替换n1,n2之间的行

    d:删除,因为时删除,所以d后面通常不接任何参数

    i:插入,i的后面可以接字符串,而这些字符串会在新的一行出现

    p:打印,也就是将某个选择的数据打印出来,通常会与参数sed -n一起运行

    s:替换,可以直接进行替换的工作。

     

     

    扩展正则表达式

    RE字符

    意义与范例

    +

    重复一个或一个以上的前一个RE字符

    ?

    零个或一个的前一个RE字符

    |

    用或的方式找出数个字符串

    ()

    找出字符串

    ()+

    多个重复组的判别

     

    五.awk

        awk '条件类型1{动作1} 条件类型2{动作2}...' filename

    awk主要是处理每一行的字段内的数据,而默认的字段的分隔符为空格键或Tab键。

  • 相关阅读:
    MS CRM 2011 RC中的新特性(4)——活动方面之批量编辑、自定义活动
    最近的一些有关MS CRM 2011的更新
    MS CRM 2011 RC中的新特性(6)——连接
    MS CRM 2011 RC中的新特性(7)—仪表板
    参加MS CRM2011深度培训课程——第一天
    MS CRM 2011插件调试工具
    MS CRM2011实体介绍(四)——目标管理方面的实体
    MS CRM 2011 RC中的新特性(3)——客户服务管理方面
    MS CRM 2011 RC中的新特性(8)—数据管理
    ExtAspNet 登陆
  • 原文地址:https://www.cnblogs.com/zhengyipengyou/p/10284425.html
Copyright © 2020-2023  润新知