ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

正则表达式中限定符与定位符的使用

2022-03-29 23:33:51  阅读:182  来源: 互联网

标签:定位 表达 字符 正则表达式 xxx 次数 限定符


目录

193. 有效电话号码

思路

使用正则表达式来检索符合要求的字符串。


需要找出固定的字符位置与可变字符的规律,然后用正则表达式中的普通字符、特殊字符、限定符、定位符来描述对应的规律。

使用正则表达式描述
1、表达(xxx) xxx-xxxx

^\([0-9][0-9][0-9]\) [0-9][0-9][0-9]-[0-9][0-9][0-9][0-9]$

优化:

^\([0-9]{3}\) [0-9]{3}-[0-9]{4}$
  • \:转义符
  • ^:限制开头
  • $:限制结尾
  • [0-9]:数字
  • [0-9]{3} :表示三位数

2、表达 xxx-xxx-xxxx

^[0-9][0-9][0-9]-[0-9][0-9][0-9]-[0-9][0-9][0-9][0-9]$

优化:

^[0-9]{3}-[0-9]{3}-[0-9]{4}$

3、同时表示xxx-xxx-xxxx和 (xxx) xxx-xxxx

^([0-9]{3}-|\([0-9]{3}\) )[0-9]{3}-[0-9]{4}$
  • ():标记一个表达式
  • |:指明两项之间的任意选择

代码

grep

grep -P '^([0-9]{3}-|\([0-9]{3}\) )[0-9]{3}-[0-9]{4}$' file.txt
  • -P:可以让grep使用perl的正则表达式语法,因为perl的正则更加多元化,能实现更加复杂的场景
    awk
awk '/^([0-9]{3}-|\([0-9]{3}\) )[0-9]{3}-[0-9]{4}$/' file.txt
  • //纯字符匹配

gawk

gawk '/^([0-9]{3}-|\([0-9]{3}\) )[0-9]{3}-[0-9]{4}$/' file.txt

快速查看表

特殊字符表达

限定符表达

限定符前面字符的出现次数

限定符 表达含义
* 出现次数>=0
+ 出现次数>=1
? 出现次数 0 or 1, 等价{0,1}
{n} 出现次数=n
{n,} 出现次数>=n
{n, m} n=< 出现次数<= m

定位符表达

定位符 表达含义
^ 字符串开始的位置
$ 字符串结束的位置
\b 限定单词(字)的字符,常用来确定一个单词,可以结合两个‘\b’使用
\B 限定非单词(字)边界的字符,用的很少

标签:定位,表达,字符,正则表达式,xxx,次数,限定符
来源: https://www.cnblogs.com/luedong/p/16074442.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有