首页 > 系统相关 >linux 正则表达式

linux 正则表达式

时间:2023-06-03 16:00:12浏览次数:53  
标签:字符 匹配 前面 正则表达式 linux 任意 元字符

目录

一、正则表达式

二、元字符

三、次数符号

四、位置锚定

五、实验

 

 

 

 

 

 

 

 

 

 

 

 

 

 

一、正则表达式

   通配符功能是用来处理文件名,而正则表达式是处理文本内容中字符。

  分类:

    1. 基本正则表达式

    2.扩展正则表达式

  

二、元字符

  元字符:

      .   匹配任意单个字符,可以是一个汉字
      () 使用转义符,只表示\(\)
      []   匹配指定范围内的任意单个字符,示例:[dn]   [0-9]   []   [a-zA-Z] [:alpha:]
      [^] 匹配指定范围外的任意单个字符,示例:[^dn] [^a.z]

1.表示任意字符

2.、转义符\,表示字符本身

 3.[]表示范围

 4.表示除什么以外

 

 

三、次数符号

  表示次数
  * #匹配前面的字符任意次,包括0次,贪婪模式:尽可能长的匹配
  .* #任意长度的任意字符,不包括0次,也就是匹配所有
  \? #匹配其前面的字符出现0次或1次,即:可有可无
  \+ #匹配其前面的字符出现最少1次,即:肯定有且 >=1 次
  \{n\} #匹配前面的字符=n次
  \{m,n\} #匹配前面的字符至少m次,至多n次
  \{,n\}  #匹配前面的字符至多n次,<=n
  \{n,\}  #匹配前面的字符至少n次

 1.表示*所有次数0和0以上

  2.任意长度

   3.里面字符出现一次或0次

  4.大于1次的显示

   5.\{n\}显示等于多少次

   6.\{m,n\}至少m次至多n次

   7.\{m,\}至少m次

   8.\{,n\}至多n次

 

四、位置锚定

  ^:以什么开头

  $:以什么结尾

  ^$:指定字符

  ^$:空格

  \b:可首可尾,必须是一个单词

  -E:扩展正则表达式

  1.展示以a开头的行

   2.以h为结尾的内容

  3.^$展示空格-v展示非空格

 4.\b可以是尾部也可以是首部

 5.E表示扩展正则表达式,可以不使用\

 

五、实验题

  1.打印ip地址

   2.匹配电话号码

   3.匹配手机号码

   4.匹配邮箱地址

   5.匹配符号空格符号

 

标签:字符,匹配,前面,正则表达式,linux,任意,元字符
From: https://www.cnblogs.com/zhende/p/17453965.html

相关文章

  • linux sort、uniq、tr、grep、eval、cut、sqlit、paste
    目录一、grep查找文件内容二、sort排序三、uniq统计压缩重复四、tr替换压缩 五、cut截断六.sqlit拆分七.paste合并八.eval        一、grep(匹配文件内容)    grep[选项]…查找条件目标文件-m 匹配次数-v  除什么以外......
  • Splunk Enterprise 9.0.5 (macOS, Linux, Windows) 发布 - 机器数据管理和分析
    SplunkEnterprise9.0.5(macOS,Linux,Windows)-机器数据管理和分析请访问原文链接:https://sysin.org/blog/splunk-9/,查看最新版。原创作品,转载请保留出处。作者主页:sysin.org混合世界的数据平台快速、大规模地从可见性转向行动,以实现安全性、可观察性等目标。2TB从......
  • linux 内存管理 ------ malloc 的内存分配
     低于128K的内存分配采用具有内存池缓存机制的brk方式,可以减少缺页中断、系统调用的次数。高于128K时采用匿名内存映射区的mmap方式,避免产生太大的内存碎片 如果分配后的虚拟内存没有被访问的话,虚拟内存是不会映射到物理内存的,这样就不会占用物理内存了。只有在访问已分配......
  • 《Linux基础与服务管理(基于CentOS 7.6)》pdf电子书免费下载
    本书以目前广泛使用的CentOS 7.6平台为例,由浅入深、系统地介绍了Linux基础及对Linux各种服务的管理。*书共11章,主要内容*括Linux简介、基础*作命令、账户与权限管理、文件系统与磁盘管理、网络管理与系统监控、软件*管理、进程与基础服务、常用服务器配置、常用集群配置、常用系......
  • Linux页表与ARM硬件页表
    早期Linux内核是基于x86体系结构设计的,x86页表中有3个标志位是ARM32硬件页表没有的。PTE_DIRTY:cpu在写操作时会设置该标志位,表示对应页面被写过,为脏页。PTE_YOUNG:CPU访问该页时会设置该标志位。在页面换出时,如果该标志位位置了,说明该页刚被访问过,页面是young的,不适合把该页换出,同......
  • windows系统编译的Qt程序转到国产化麒麟linux中编译
    团队自研股票软件,关威信共总号:QStockView,下载1.1 windows系统编译的Qt程序转到国产化麒麟linux中编译(1)把Vs工程项目文件导入到Linux中首先把vs的工程拷贝到linux里面(可以用虚拟机的共享文件夹功能),把工程里面的目录Debug、GeneratedFiles、Release、Win32、x64和文件…user、......
  • k8s集群外的linux加入prometheus监控
    client配置:准备一台linux,不在k8s集群中,安装node_exporterwgethttps://github.com/prometheus/node_exporter/releases/download/v1.6.0/node_exporter-1.6.0.linux-amd64.tar.gztar-xvfnode_exporter-1.6.0.linux-amd64.tar.gzmvnode_exporter-1.6.0.linux-amd64/usr/lo......
  • linux 性能自我学习 ———— 软中断 [五]
    前言linux性能的自我学习。正文什么是软中断呢?举一个网络的例子。linux将中断处理过程分为两个阶段:上半部用来快速处理中断,他在中断禁止模式下运行,注意是处理跟硬件紧密相关或时间敏感的工作。下半部用来延迟处理上半部未完成的工作,通常以内核线程的方式运行。比如网卡......
  • 国产化麒麟linux系统QtCreator和QtCreator编译的程序无法输入中文libfcitx最新版本编
    1.问题描述麒麟linux系统QtCreator和QtCreator编译的程序无法输入中文,网上找了很多的libfcitxplatforminputcontextplugin.so库都无法使用正常输入;Qt版本:5.9.6麒麟系统版本:海光麒麟桌面版kylin V10 SP1  小版本号2203XC-P923P_KOS_2203_AMD_HG_3250_220630_AUDIT_ACTIVE.i......
  • linux卸载MySQL
    linux卸载MySQL一查找以前是否装有mysqlrpm-qa|grep-imysql显示之前安装了:MySQL-server-5.6.22-1.el6.i686MySQL-client-5.6.22-1.el6.i686二停止mysql服务、删除之前安装的mysql删除命令:rpm-e–nodeps包名rpm-evMySQL-server-5.6.22-1.el6.i686rpm-evMySQL-cli......