`
flylynne
  • 浏览: 373759 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

正则表达式

阅读更多
一.基础正则表达式
  grep:分析一行信息,若其中有我们想要的信息,就将该行取出来
     grep [-acinv] '搜索字符串' filename
     -a:将二进制文件以文本文件的方式搜索数据
     -c:计算找到搜索字符串的次数
     -i:忽略大小写
     -n:顺便输出行号
     -v:反向选择,即显示出没有'搜索字符串'内容的那一行
     例子:last | grep 'root'
     例子:last | grep -v 'root'
     last | grep 'root'| cut -d ' ' -f 1


例1.搜索特定字符串
    从文件中取得'the'字符串
    grep -n 'the' filename
   当该行没有'the'就取出来
   grep -nv 'the' filename
例2.利用[]搜索集合字符
   []中不论有几个字符都代表有一个字符
   grep -n 'te[ae]st' filename
   [^]是[]的反向选择
   grep -n '[^g]oo' filename
例3.行首^和行尾$字符
    查询以'the'开头的行
    grep -n '^the' filename
    查询以小写字母开头
    grep -n '^[a-z]' filename
    查询非字母开头的
    grep -n '^[^a-zA-Z]' filename
    找出空行
    grep -n '^$' filename
    略去空行和注释行
   grep -v '^$' filename | grep -v '^#'
例4.任意一个字符.和重复字符*
   grep -n 'g..d' filename  :查找共有四个字符串,开始是g结束是d
  grep -n '000*' filename   :至少俩个00字符串
  grep -n 'g00*g' filename  :开头和结尾都是g,中间有一个以上o
  grep -n 'g.*g'  filename  :开头和结尾都是g,中间可有可无
  找出任意数字的行 grep -n '[0-9][0-9]*' filename
例5.限定连续重复字符范围
  grep -n '0\{2\}' filename   :找到两个0的字符串
  grep -n 'go\{2,5\}g'  filename    :找到g后面有2~5个o,然后在接个g的字符串
grep -n 'go\{2,\}g' filename         :找到两个以上的
二.扩展正则表达式
上面的一个例子可以这样:egrep -v '^$|^#' filename找出不是空白行和注释行
+:重复一个或者一个以上
?:0个或者1个
|:用或的方式找出字符串
():找出用户组字符串grep -n 'g(la|oo)d' filename
   意思是搜索glad或者是good字符串
分享到:
评论

相关推荐

    qt使用正则表达式限制lineEdit的输入,对正则表达式进行了封装,可以直接引入,工程编译正常

    在Qt框架中,正则表达式(Regular Expression)是一种强大的文本处理工具,它允许程序员以结构化的方式匹配、查找、替换或验证字符串。本项目针对Qt的lineEdit组件,通过正则表达式实现了输入限制功能,使得lineEdit...

    正则表达式转换工具

    正则表达式(Regular Expression,简称regex)是一种强大的文本处理工具,它用于匹配、查找、替换等操作,涉及字符串处理的各个领域。正则表达式转换工具是专门针对这一需求而设计的,它能帮助用户将输入的内容转换...

    PB实现的正则表达式

    在IT领域,正则表达式(Regular Expression,简称regex)是一种强大的文本处理工具,它能够进行复杂的模式匹配、查找、替换等操作。在本话题中,我们将探讨如何使用PowerBuilder 11.5这一经典的开发环境来实现正则...

    C语言正则表达式库

    C语言正则表达式库是用于在C编程环境中处理和匹配正则表达式的软件库。这个库名为PCRE(Perl Compatible Regular Expressions),正如其名,它与Perl语言中的正则表达式语法高度兼容,提供了丰富的功能和强大的匹配...

    易语言正则表达式文本替换

    例如,"子程序_正则文本替换"可能就是一个易语言中用于执行正则表达式替换的子程序,它接收输入的文本、正则表达式模式和替换字符串,然后返回经过替换操作的新文本。 1. **正则表达式基础** - **元字符**:如`.`...

    pb 使用正则表达式源码pbregexp

    标题中的“pb 使用正则表达式源码pbregexp”指的是在PowerBuilder(简称pb)环境中,利用名为“pbregexp”的正则表达式组件来实现源代码级别的正则表达式操作。PowerBuilder是一款流行的可视化的、面向对象的软件...

Global site tag (gtag.js) - Google Analytics