邮箱匹配:
正则:(?:\w+.)?\w+@[\w-]+.com(?:.cn)?
易错点:’.'为metacharater,需要使用转义字符
test@hot-mail.com
v-ip@magedu.com
web.manager@magedu.com.cn
super.user@google.com
a@w-a-com
a-a@w-a-com
匹配html标记内的内容:
正则:http://w{3}.\w+.com(/\w+)?(.\w+)? 匹配 http://www.magedu.com/index.html
正则:(?<=>)\w+(?=<) 匹配“马哥教育”
<a href=‘http://www.magedu.com/index.html’target=’_blank’>马哥教育
匹配URL:
正则:https??/?[a-z]+.\w+.\w+(/\w+)?(.\w+)?
http://www.magedu.com/index.html
https://login.magedu.com
file:///etc/sysconfig/network
匹配中国二代身份证ID
正则:[1-9]\d{5}(?:19\d{2}|20[01]\d)(?:02(?:0[1-9]|1\d|2[0-9])|03-91)\d{3}[0-9X]
321105700101003
321105197001010030
11210020170101054X
112023198802018035
11423619550531205E
判断密码强弱
只有笨办法,写24种组合,暂时没好的思路
匹配0~9的任意数字
正则:\b(?:\d|[1-9]\d{0,2})\b
1
12
995
9999
102
02
003
4d
0
IP地址
正则:(???:\b2[0-5]{2}|1?\d\d?\b).){3}(?:\b2[0-5]{2}|1?\d\d?\b)
正则(断言):(???:2[0-5]{2}|1\d\d|(?<!\d)[1-9]?\d).)(???:\b2[0-5]{2}|1?\d\d?\b).){2}(?:2[0-5]{2}|1\d\d|[1-9]?\d(?!\d))
192.168.1.150
0.0.0.0
255.255.255.255
17.16.52.100
172.16.0.100
400.400.999.888
001.022.003.000
257.257.255.256
选出含有ftp的链接,且文件类型是gz或者xz的文件名
正则(分组捕获):.*ftp.+/(.+gz|xz)
正则(?<=.ftp./)[^/]*.(gz|xz)
贪婪模式:断言表达式为.*贪婪,之后的正则出现.*贪婪,则优先贪婪正则中的.*,之后断言表达式里面.*贪婪
ftp://ftp.astron.com/pub/file/file-5.14.tar.gz
ftp://ftp.gmplib.org/pub/gmp-5.1.2/gmp-5.1.2.tar.xz
ftp://ftp.vim.org/pub/vim/unix/vim-7.3.tar.bz2
http://anduin.linuxfromscratch.org/sources/LFS/lfs-packages/conglomeration//iana-etc/iana-etc-2.30.tar.bz2
http://anduin.linuxfromscratch.org/sources/other/udev-lfs-205-1.tar.bz2
http://download.savannah.gnu.org/releases/libpipeline/libpipeline-1.2.4.tar.gz
http://download.savannah.gnu.org/releases/man-db/man-db-2.6.5.tar.xz
http://download.savannah.gnu.org/releases/sysvinit/sysvinit-2.88dsf.tar.bz2
http://ftp.altlinux.org/pub/people/legion/kbd/kbd-1.15.5.tar.gz
http://mirror.hust.edu.cn/gnu/autoconf/autoconf-2.69.tar.xz
http://mirror.hust.edu.cn/gnu/automake/automake-1.14.tar.xz