设为首页 收藏本站
查看: 1198|回复: 0

shell 正则表达式基础

[复制链接]

尚未签到

发表于 2018-8-27 07:56:16 | 显示全部楼层 |阅读模式
  1 常用的命令工具
  grep、egrep、vim、sed、awk
  2 基本的正则表达含义
  d         匹配字母d
  .        匹配任意单个字符
  *        匹配一个或多个
  .*        匹配任意多个字符
  ^        匹配字符串的开头
  $        匹配字符串的结尾
  []        匹配集合中的任意单个字符
  [^]       匹配否定,对括号中的集合取反
  [x-y]      匹配x到y连续的字符串范围
  \        匹配转义后的字符串
  \{n,\}      匹配前一个字符重复至少n次
  \{n\}      匹配前一个字符重复n次
  \(\)      调用\( 和 \)之间的内容
  3 校验字符的表达式
  1 汉字:^[\u4e00-\u9fa5]{0,}$
  2 英文和数字:^[A-Za-z0-9]+$ 或 ^[A-Za-z0-9]{4,40}$
  3 长度为3-20的所有字符:^.{3,20}$
  4 由26个英文字母组成的字符串:^[A-Za-z]+$
  5 由26个大写英文字母组成的字符串:^[A-Z]+$
  6 由26个小写英文字母组成的字符串:^[a-z]+$
  7 由数字和26个英文字母组成的字符串:^[A-Za-z0-9]+$
  8 由数字、26个英文字母或者下划线组成的字符串:^\w+$ 或 ^\w{3,20}$
  9 中文、英文、数字包括下划线:^[\u4E00-\u9FA5A-Za-z0-9_]+$
  10 中文、英文、数字但不包括下划线等符号:^[\u4E00-\u9FA5A-Za-z0-9]+$
  11 可以输入含有^%&',;=?$\"等字符:[^%&',;=?$\x22]+
  12 禁止输入含有~的字符:[^~\x22]+
  4 特殊需求表达式
  1 Email地址:^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$
  2 域名:[a-zA-Z0-9][-a-zA-Z0-9]{0,62}(/.[a-zA-Z0-9][-a-zA-Z0-9]{0,62})+/.?
  3 InternetURL:[a-zA-z]+://[^\s]* 或 ^http://([\w-]+\.)+[\w-]+(/[\w-./?%&=]*)?$
  4 手机号码:^(13[0-9]|14[5|7]|15[0|1|2|3|5|6|7|8|9]|18[0|1|2|3|5|6|7|8|9])\d{8}$
  5 电话号码("XXX-XXXXXXX"、"XXXX-XXXXXXXX"、"XXX-XXXXXXX"、"XXX-XXXXXXXX"、"XXXXXXX"和"XXXXXXXX):^(\(\d{3,4}-)|\d{3.4}-)?\d{7,8}$
  6 国内电话号码(0511-4405222、021-87888822):\d{3}-\d{8}|\d{4}-\d{7}
  7 身份证号:
  15或18位身份证:^\d{15}|\d{18}$
  15位身份证:^[1-9]\d{7}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}$
  18位身份证:^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{4}$
  8 短身份证号码(数字、字母x结尾):^([0-9]){7,18}(x|X)?$ 或 ^\d{8,18}|[0-9x]{8,18}|[0-9X]{8,18}?$
  9 帐号是否合法(字母开头,允许5-16字节,允许字母数字下划线):^[a-zA-Z][a-zA-Z0-9_]{4,15}$
  10 密码(以字母开头,长度在6~18之间,只能包含字母、数字和下划线):^[a-zA-Z]\w{5,17}$
  11 强密码(必须包含大小写字母和数字的组合,不能使用特殊字符,长度在8-10之间):^(?=.*\d)(?=.*[a-z])(?=.*[A-Z]).{8,10}$
  12 日期格式:^\d{4}-\d{1,2}-\d{1,2}
  13 一年的12个月(01~09和1~12):^(0?[1-9]|1[0-2])$
  14 一个月的31天(01~09和1~31):^((0?[1-9])|((1|2)[0-9])|30|31)$
  15 腾讯QQ号:[1-9][0-9]{4,} (腾讯QQ号从10000开始)
  16 中国邮政编码:[1-9]\d{5}(?!\d) (中国邮政编码为6位数字)
  17 IP地址:\d+\.\d+\.\d+\.\d+ (提取IP地址时有用)


运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.iyunv.com/thread-557010-1-1.html 上篇帖子: shell编程基础知识一 下篇帖子: shell 正则表达三剑客--grep
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表