网络编程 
首页 > 网络编程 > 浏览文章

浅析正则表达式

(编辑:jimmy 日期: 2024/9/24 浏览:3 次 )

所谓的正则表达式,就是用一类元字符(不表示本身意义,而表示统配或其他意义),组

合其他字符所编数出来的,能够匹配符合条件的字符。
  正则表达式有基本正则表达式和扩展正则表达式两大类,
  下面给大家介绍一下基本正则表达式和扩展正则表达式的一些常用的字符,

基本正则表达式:

  ^        锚定行首的符合条件的内容
  $        锚定行尾的符合条件的内容
  ^$       表示空白行
  .        匹配任意单个字符
  *        匹配进挨在其前面的字符任意次
  .*       匹配任意长度的任意字符
  []       匹配指定范围内的任意字符
  [^]      匹配指定范围外的任意字符
  \?       匹配紧挨在其前面的字0次或1次
  \{m,n\}  匹配其前面的字符至少m次,至多n次
  \{0,n\}  匹配其前面的字符0-n次
  \{m,\}   匹配其前面的字符至少m次
  \{m\}    精确匹配m次
  \<       锚定词首
  \>       锚定词尾
  \(\)     分组

grep的常用选项

  --color=auto   自动为匹配字符添加颜色
  -v             反向选取,只显示不符合模式的行
  -o             只显示被模式匹配但的字符串,而不是整个行
  -i             不区分字符大小写
  -A  n          显示匹配到的行时,顺便显示其后面的n个行
  -B  n          显示前面的n行
  -C  n          显示后面的n行
  -E             使用扩展的正则表达式    grep -E = egrep

扩展正则表达式(在这里至列出不同之处)

   ?            出现了0次或1次 正则表达式为\?
   {m,n}         匹配前边字符最少m次,最多n次
   ()            分组,用法与grep类似
   a|b           二选一

1,锚定/etc/passwd文件中行首为root的行
     grep  “^root” /etc/passwd
2,锚定/etc/passwd文件行尾为sh的行
     grep “sh$” /etc/passwd
3,查找空白行
     grep “^$” /etc/passwd
4,匹配a后面跟了任意单个字符的行
     grep “a.” /etc/passwd
5,匹配a后面跟了任意长度字符的行
     grep “a*” /etc/passwd
4,匹配a后面跟了任意长度的任意字符,再跟上b的行
     grep “a.*b” /etc/passwd
5,匹配a后面跟了任意个一数字后又跟了任意一个字母的行
     grep “a[0-9][a-zA-Z]” /etc/passwd
6,匹配a后面跟了任意一个数字或字母的行
     grep “a[0-9a-zA-Z]” /etc/passwd
7,匹配0或1个a后面跟了个b的行
     grep “a\?b” /etc/passwd
8,匹配最少一个a,最多3个a后面跟了一个b的行
     grep “a\{1,3\}b” /etc/passwd
9,锚定单词admin的行
     grep “\<admin\>” /etc/passwd
10,匹配自少出现一次ad,最多出现3次ad的行
     grep “\(ab\)\{1,3\}” /etc/passwd

上一篇:乱象,印迹 正则学习问答
下一篇:几种常见攻击的正则表达式
一句话新闻
一文看懂荣耀MagicBook Pro 16
荣耀猎人回归!七大亮点看懂不只是轻薄本,更是游戏本的MagicBook Pro 16.
人们对于笔记本电脑有一个固有印象:要么轻薄但性能一般,要么性能强劲但笨重臃肿。然而,今年荣耀新推出的MagicBook Pro 16刷新了人们的认知——发布会上,荣耀宣布猎人游戏本正式回归,称其继承了荣耀 HUNTER 基因,并自信地为其打出“轻薄本,更是游戏本”的口号。
众所周知,寻求轻薄本的用户普遍更看重便携性、外观造型、静谧性和打字办公等用机体验,而寻求游戏本的用户则普遍更看重硬件配置、性能释放等硬核指标。把两个看似难以相干的产品融合到一起,我们不禁对它产生了强烈的好奇:作为代表荣耀猎人游戏本的跨界新物种,它究竟做了哪些平衡以兼顾不同人群的各类需求呢?
友情链接:杰晶网络 DDR爱好者之家 南强小屋 黑松山资源网 白云城资源网 SiteMap