首页 > 系统相关 >linux中正则表达式 {n} 表示匹配前面的项n次

linux中正则表达式 {n} 表示匹配前面的项n次

时间:2023-01-05 17:01:13浏览次数:46  
标签:ab 匹配 正则表达式 pc1 cd linux test txt root

 

001、{n};    匹配之前的项 n 次;     [0-9]{3}能够匹配任意的三位数,[0-9]{3}可以扩展为[0-9][0-9][0-9]。

 

测试:

[root@pc1 test]# ls
a.txt
[root@pc1 test]# cat a.txt                         ## 测试数据
ab123cdef 88
ab1234cdefg 77
ab12345cdeg 22
ab1124cdefg 99
[root@pc1 test]# awk '$1 ~ /ab[0-9]{3}cd/' a.txt   ##[0-9]{3}表示匹配数字3次
ab123cdef 88
[root@pc1 test]# awk '$1 ~ /ab[0-9]{4}cd/' a.txt   ##[0-9]{4}表示匹配数字4次
ab1234cdefg 77
ab1124cdefg 99
[root@pc1 test]# awk '$1 ~ /ab[0-9]{5}cd/' a.txt   ##......
ab12345cdeg 22
[root@pc1 test]# awk '$1 ~ /ab[0-9]{7}cd/' a.txt
[root@pc1 test]# awk '$1 ~ /ab[0-9]{3}cd/' a.txt
ab123cdef 88
[root@pc1 test]# awk '$1 ~ /ab[0-9][0-9][0-9]cd/' a.txt   ## [0-9][0-9][0-9] 等价于 [0-9]{3}
ab123cdef 88

 

002、{n,} 之前的项至少需要匹配 n 次; [0-9]{5,}能够匹配任意一个5位或更多位的数字

 

测试:

[root@pc1 test]# ls
a.txt
[root@pc1 test]# cat a.txt
ab123cdef 88
ab1234cdefg 77
ab12345cdeg 22
ab123456cdefg 99
ab123456789cdefg 99
[root@pc1 test]# awk '$1 ~ /ab[0-9]{5,}cd/' a.txt   ## 匹配数字至少5次
ab12345cdeg 22
ab123456cdefg 99
ab123456789cdefg 99
[root@pc1 test]# awk '$1 ~ /ab[0-9]{6,}cd/' a.txt   ## ......
ab123456cdefg 99
ab123456789cdefg 99
[root@pc1 test]# awk '$1 ~ /ab[0-9]{8,}cd/' a.txt   ## .....
ab123456789cdefg 99

 

标签:ab,匹配,正则表达式,pc1,cd,linux,test,txt,root
From: https://www.cnblogs.com/liujiaxin2018/p/17028090.html

相关文章

  • manjaro/Linux设置开机启动脚本
     /etc/profile:此文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行.并从/etc/profile.d目录的配置文件中搜集shell的设置 /etc/rc.d/rc.local在这......
  • linux C 简易版iostat
    Linux下用C语言获取IO信息只获取iostat的CPU信息代码如下#include<stdio.h>#include<stdlib.h>#include<string.h>#include<ctype.h>#include<unistd.h>#inc......
  • linux脚本免密的方法/不用输入密码
     第一种方法:使用管道(上一个命令的stdout接到下一个命令的stdin):在脚本首行添加#!/bin/bashechopassword|sudo-Sapt-getupdate第二种方法使用文本块输入重定向......
  • linux 中正则表达式?、+、*、及.*的区别
     001、?表示匹配0次或者1次atcg?t能够匹配atct或atcgt,但是不能匹配atcggt。 测试:[root@pc1test]#lsa.txt[root@pc1test]#cata.txtatct888atcggk......
  • 六款常用的linux C/C++ IDE
     一、AnjutaAnjuta是一个多语言的IDE,它最大的特色是灵活,同时打开多个文件,内嵌代码级的调试器(调用gdb),应用程序向导(Applicationwizards)可以方便的帮助你创建GNOME程序而不......
  • linux 中 [^] 正则表达式,匹配不在中括号内的任意一个字符。
     [^]:匹配不在中括号内的任意一个字符。中括号内可以是一个字符组或字符范围; 1[^01]能够匹配12和13,但是不匹配11和10;A[^0-9]匹配A以及随后除数字外的任意单......
  • Linux 添加nacos守护进程
    1、编写启动服务文件 /lib/systemd/system/nacos.service#vim/lib/systemd/system/nacos.service添加以下内容[Unit]Description=nacosAfter=network.target[Servi......
  • JavaScript之正则表达式
    JavaScript之正则表达式search()方法&replace()1<!DOCTYPEhtml>2<html>3<head>4<metacharset="utf-8">5<title>JavaScript正则表......
  • linux多进程开发(二)使用pipe进行父子进程通讯
    运行环境win11linux子系统Ubuntu2204g++11.3.0LinuxDESKTOP-XXXXX5.15.79.1-microsoft-standard-WSL2#1SMPWedNov2301:01:46UTC2022x86_64x86_64x86_6......
  • linux 中echo 命令输出感叹号
     001、直接使用双引号输出[root@pc1test2]#echo"helloworld!"##双引号输出感叹号报错-bash:!":eventnotfound  002、测试转义字符[root@pc1......