文章目录
- 正则表达式
- 书写规则
- 核查手机号,邮箱/爬虫
- 补充
- 异常
- 异常的体系
- 自定义异常
- 异常的处理
正则表达式
书写规则
核查手机号,邮箱/爬虫
- 定义爬取规则(正则表达式)
- 把正则表达式封装到一个pattern对象(pattern.compile)
- 通过pattern对象得到查找内容的匹配器(matcher)
- 通过匹配器查找信息(find())
邮箱地址部分
(\w{1,}@\w{2,10}(\.\w{2,10}){1,2})
- \w{1,}:1个或多个字母、数字、下划线(用户名)
- @:字面量@符号
- \w{2,10}:2-10个字母、数字、下划线(域名主体)
- (\.\w{2,10}){1,2}:1-2次点号加2-10个字符(域名后缀),如.com或.com.cn
手机号码部分
(1[3-9]\d{9})
- 1:以1开头
- [3-9]:第二位是3-9
- \d{9}:后面9位数字
固定电话部分
(0\d{2,5}-?\d{5,15})
- 0:以0开头
- \d{2,5}:2-5位区号
- -?:可选的短横线
- \d{5,15}:5-15位电话号码
400电话部分
400-?\d{3,8}-?\d{3,8}
400:以400开头
-?:可选的短横线
\d{3,8}:3-8位数字
-?:可选的短横线
\d{3,8}:3-8位数字
补充
正则表达式用于搜索替换、分割内容,需要结合String提供的如下方法完成
异常
异常的体系
Error:代表的系统级别错误(属于严重问题),也就是说系统一旦出现问题,sun公司会把这些问题封装成Error对象给出来, 说白了,Error是给sun公司自己用的,不是给我们程序员用的,因此我们开发人员不用管它。
Exception:叫异常,它代表的才是我们程序可能出现的问题,所以,我们程序员通常会用Exception以及它的孩子来封装程序出现的问题。
- 运行时异常:RuntimeException及其子类,编译阶段不会出现错误提醒,运行时出现的异常(如:数组索引越界异常)
- 编译时异常:编译阶段就会出现错误提醒的。(如:日期解析异常)
自定义异常
推荐受检异常(继承Exception)
异常可作为方法的一种特殊类型返回值来告诉上层调用者底层的执行情况
异常的处理
- throws抛出异常
- try-catch捕获异常
- 捕获异常,记录异常并响应合适的信息给用户
- 捕获异常,并尝试解决异常