zoukankan      html  css  js  c++  java
  • Linux系统正则表达式用法笔记

    640?wx_fmt=jpeg

    正则表达式:能用某种模式去匹配一类字符串的公式,它是由一串字符和元字符组成的字符串。

    元字符就是阐述字符表达式的内容、转换和描述各种操作信息的字符。

    常见的一些基础的正则表达式

    1、“.”圆点符号

    用来匹配除换行符之外的任意一个字符。比如c.o可以匹配:ceo、cto、coo。注意:一个圆点符号只能表示一个字符。

    2、“*”符号

    用来匹配前一个字符0次或者任意多次的字符串。比如sa*可以匹配s、sa、saa。常用写法:.*:匹配任意长度不包含换行符的字符串。

    3、“{n,m}”

    也是用来匹配前一个字符,使用“{n,m}”可以更加灵活的控制出现的次数,常用的有以下三种形式:

    {n}:匹配前面的字符n次。比如:ro{2}t:可以匹配root

    {n,}:匹配前面的字符至少n次以上包含n次。

    {n,m}:匹配前面的字符n到m次。

    4、“^”符号

    尖角号用于匹配开头的字符。比如:^root:匹配的情况改行首字符是root。

    5、$符号

    和”$“符号相反的功能,用于匹配尾部字符串。

    6、”[]“符号

    用于匹配方括号内出现的任一字符。比如[ABCD]:表示匹配其中的任何一个。

    [a-z]:匹配小写字母,[A-Z]:匹配大写字母,[A-Za-z]:匹配字母。

    说明:如果^符号出现在[]里面表示的是取反,不属于的意思。

    匹配手机号正则写法:^1[3578][0-9]{9}

    7、”“符号

    主要是用作转义字符。比如转义字符是\.

    8、”<“符号和”>“

    这两个符号主要是用于界定单词的左边界和有边界。

    比如:“<linux”用于匹配linux开头的单词,“linux>”用于匹配linux结尾的单词。如果需要精确匹配linux可以使用“<linux>”。

    9、“d”符号

    用于匹配数字,和[0-9]作用一样。

    比如:echo 123456 | grep [0-9]

    123456

    echo 123456 | grep -P 'd' #需要加 -P参数。

    123456

    10、“”符号

    用于匹配单词的边界

    比如:echo “xiao ming” | grep 'xiao'

    输出:xiao ming

    echo “xiaoming” | grep 'xiao'

    输出:

    11、“B”符号

    用于匹配非单词的边界

    12、“w”符号

    用于匹配字母数字和下划线,等价于[A-Za-z0-9]

    13、“W”符号

    用于匹配非字母非数字和非下划线,等价于[A-Za-z0-9]

    14、“ ”符号

    匹配一个换行符

    15、“ ”符号

    匹配一个回车符

    16、“ ”符号

    匹配一个制表符

    17、“f”符号

    匹配一个换页符

    18、“s”符号

    匹配任何空白字符

    19、“S”符号

    匹配非任何空白字符



  • 相关阅读:
    自动化测试用例设计实例
    day07 python2与python3 编码
    day06-2 数据结构
    遇到一个关于C#调用Microsoft.Office.Interop.Word实例化的一个问题
    关于C#调用matlab生成的dll的一些经验(亲测)
    javascript 检测浏览类型和版本
    图片自适应完美兼容IE8
    Java VS .NET:Java与.NET的特点对比
    【C#点滴记录】ASP.NET 使用C# 导出Word 和Excel
    关于现在IT行业从业者一些建议
  • 原文地址:https://www.cnblogs.com/hgmyz/p/12351227.html
Copyright © 2011-2022 走看看