学习了正则表达式,感觉很简单,写几个Demo试试看。
Demo01 电话号码:
从文本中找出电话号码
hsajkhfdjashfdjksasfdlsjkdkls sfdhjkshf akjhdjsakhdlja ajhjdsaha
ffhfjhfj
sahfjkahfd 45454 654 6541212 545
afjkahfja 65da55555555555554152132
77777777777dadd77777777777777777777
afashjkfhjak 777777777d777adsdaddd777777777777777
asfhgjakshfjahf
gogogogogo totot toto goto goto toto gogo
going doing eating
17713206751
7521257
0312-7619735
[email protected]
sdfhjhf@fhdk
ahkjhf@dfhsjk
[email protected]
010-23232325
分析:座机三到四个数字+下划线-加上7到9个数字
0\d{2,3}-{7,9}
手机号1开头+3或5或7或8+9个数字
1[3578]\d{9}
综合:(0\d{2,3}-{7,9})|(1[3578]\d{9})
电子邮箱
数字或者字母开头
\w+@
@后面是qq.com或者outlook.com或者是qq.com.cn
[a-zA-Z0-9]+(\.[a-z]{2,3}){1,2}用一个捕获组表示,毕竟.com .cn可能出现两次
综合:
[\w\-]+@[a-zA-Z0-9]+(\.[a-z]{2,3}){1,2}
补充说明:\w比[0-9a-zA-Z]多出一个下划线