grep正則表達式課堂作業
1、用正則表達式表示IP地址
#grep -E "(\<[1-9]|[1-9][[:digit:]]|1[[:digit:]][[:digit:]]|2[0-4][[:digit:]]|25[0-5]\>)\.(\<[[:digit:]]|[1-9][[:digit:]]|1[[:digit:]]
[[:digit:]]|2[0-4][[:digit:]]|25[0-5]\>)\.(\<[[:digit:]]|[1-9][[:digit:]]|1[[:digit:]][[:digit:]]|2[0-4][[:digit:]]|25[0-5]\>)\.(\<[[:digit:]]|[1-9][[:digit:]]|1[[:digit:]][[:digit:]]|2[0-4][[:digit:]]|25[0-5]\>)" ip
# grep -E -o "(\<([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])" ip
2、用正則表達式表示手機號11, 13, 17, 15, 18開頭
# grep "^1[13578][[:digit:]]\{,9\}" fg
# grep -E -o "^\b1[3578][0-9]{9}\b" fg
3、 用正則表達式表示身份證號18位
# grep -E "\<((1[1-5])|(2[1-3])|(3[1-7])|(4[1-6])|(5[0-4])|(6[1-5])|(71|81|82))([0-9]){4}(19|20)([0-9]){2}((0[1-9])|1([0-2]))(0[1-9]|([0-9])|(2[0-9])|(3[0-1]))([0-9]){3}([0-9]|X)\>" name
4、 用正則表達式表示郵箱
# grep -E "\<([[:alnum:]]+(-|_)*[[:alnum:]]*)\>@([[:alnum:]]+\.)+[[:alnum:]]+" mail
原創文章,作者:Aaron_wang,如若轉載,請注明出處:http://www.www58058.com/29511